Aracılığıyla paylaş


FOR JSON, SQL Server veri türlerini JSON veri türlerine dönüştürme

Şunlar için geçerlidir: SQL Server 2016 (13.x) ve sonraki sürümler Azure SQL DatabaseAzure SQL Managed InstanceAzure Synapse Analytics (yalnızca sunucusuz SQL havuzu)Microsoft Fabric'te SQL analitik uç noktasıMicrosoft Fabric'te depo veritabanıMicrosoft Fabric'te SQL veritabanı

FOR JSON yan tümcesi, SQL Server veri türlerini JSON çıkışındaki JSON türlerine dönüştürmek için aşağıdaki kuralları kullanır.

Category SQL Server veri türü JSON veri türü
Karakter & dize türleri char, nchar, varchar, nvarchar string
Sayısal türler , bigint, float, ondalıksayısal number
Bit türü bit Boolean (doğru veya yanlış)
Tarih & saat türleri date, datetime, datetime2, time, datetimeoffset string
İkili türler varbinary, binary, görüntü, zaman damgası/rowversion BASE64 ile kodlanmış dize
CLR türleri geometri, coğrafya, diğer CLR türleri Desteklenmiyor. Bu türler hata döndürür.

SELECT deyiminde CAST veya CONVERTkullanın ya da kaynak verileri başarıyla JSON türüne dönüştürülebilecek bir SQL Server veri türüne dönüştürmek için clr özelliği veya yöntemi kullanın. Örneğin, geometri türü için STAsText() kullanın veya herhangi bir CLR türü için ToString() kullanın. JSON çıkış değerinin türü, SELECT deyiminde uyguladığınız dönüştürmenin dönüş türünden türetilir.
Diğer türler uniqueidentifier, money string

SQL Veritabanı Altyapısı'nda JSON hakkında daha fazla bilgi edinin

Yerleşik JSON desteğine görsel bir giriş için aşağıdaki videolara bakın:

  • NoSQL ile ilişkisel dünyalar arasında bir köprü olarak JSON
  • FOR JSON ile sorgu sonuçlarını JSON olarak biçimlendirme