Ekinlikler
31 Mar 23 - 2 Nis 23
En büyük SQL, Fabric ve Power BI öğrenme etkinliği. 31 Mart – 2 Nisan. 400 ABD doları tasarruf etmek için FABINSIDER kodunu kullanın.
Bugün kaydolunBu tarayıcı artık desteklenmiyor.
En son özelliklerden, güvenlik güncelleştirmelerinden ve teknik destekten faydalanmak için Microsoft Edge’e yükseltin.
Şunlar için geçerlidir:SQL Server
Azure SQL Yönetilen Örneği
Azure Synapse Analytics (yalnızca sunucusuz SQL havuzu)
Microsoft Fabric
Warehouse'da SQL analiz uç noktası
FOR JSON
yan tümcesini bir SELECT
deyimine ekleyerek sorgu sonuçlarını JSON olarak biçimlendirin veya SQL Server'dan verileri JSON olarak dışarı aktarın. Uygulamadan JSON çıktısını biçimlendirme görevini SQL Server'a devrederek istemci uygulamalarını basitleştirmek için FOR JSON
yan tümcesini kullanın.
Not
Azure Data Studio, bu makalede gösterildiği gibi JSON sonuçlarını otomatik olarak biçimlendirdiğinden JSON sorguları için önerilen sorgu düzenleyicisidir. SQL Server Management Studio biçimlendirilmemiş bir dize görüntüler.
FOR JSON
yan tümcesini kullandığınızda, JSON çıkışının yapısını açıkça belirleyebilir veya SELECT
deyiminin yapısının çıkışı belirlemesine izin verebilirsiniz.
JSON çıkışının biçimi üzerinde tam denetim sahibi olmak için FOR JSON PATH
kullanın. Sarmalayıcı nesneleri oluşturabilir ve karmaşık özellikleri iç içe yerleştirebilirsiniz.
JSON çıkışını SELECT
deyiminin yapısına göre otomatik olarak biçimlendirmek için FOR JSON AUTO
kullanın.
aşağıda FOR JSON
yan tümcesi ve çıktısı olan bir SELECT
deyimi örneği verilmiştir.
for JSON'un nasıl çalıştığını gösteren
PATH
modunda, iç içe çıkışı biçimlendirmek için nokta söz dizimini (örneğin, Item.Price
) kullanabilirsiniz.
İşte PATH
modunu FOR JSON
yan tümcesiyle kullanan bir örnek sorgu. Aşağıdaki örnek, adlandırılmış bir kök öğe belirtmek için ROOT
seçeneğini de kullanır.
FOR JSON çıktısının akış diyagramı.
Daha ayrıntılı bilgi ve örnekler için bkz. PATH Modu (SQL Server) ile İç İçe JSON Çıktısını Biçimlendirme .
Söz dizimi ve kullanımı için bkz. SELECT - FOR Yan Tümcesi (Transact-SQL).
Aşağıdaki ek seçenekleri kullanarak FOR JSON
yan tümcesinin çıkışını denetleyin.
ROOT
JSON çıkışına tek ve en üst düzey bir öğe eklemek için ROOT
seçeneğini belirtin. Bu seçeneği belirtmezseniz, JSON çıkışının kök öğesi yoktur. Daha fazla bilgi için bkz. ROOT Seçeneği (SQL Server) ile JSON Çıkışına Kök Düğüm Ekleme.
INCLUDE_NULL_VALUES
JSON çıkışına null değerler eklemek için INCLUDE_NULL_VALUES
seçeneğini belirtin. Bu seçeneği belirtmezseniz, çıktı sorgu sonuçlarındaki NULL
değerleri için JSON özelliklerini içermez. Daha fazla bilgi için bkz. JSON'a Null Değerler Ekleme - INCLUDE_NULL_VALUES Seçenek.
WITHOUT_ARRAY_WRAPPER
FOR JSON
yan tümcesinin JSON çıkışını çevreleyen köşeli ayraçları varsayılan olarak kaldırmak için WITHOUT_ARRAY_WRAPPER
seçeneğini belirtin. Tek satırlı bir sonuçtan çıkış olarak tek bir JSON nesnesi oluşturmak için bu seçeneği kullanın. Bu seçeneği belirtmezseniz, JSON çıkışı bir dizi olarak biçimlendirilir, yani çıkış köşeli ayraç içine alınır. Daha fazla bilgi için bkz. Köşeli Ayraçları JSON'dan Kaldırma - WITHOUT_ARRAY_WRAPPER Seçeneği.
FOR JSON
yan tümcesinin çıkışı aşağıdaki özelliklere sahiptir:
Sonuç kümesi tek bir sütun içerir.
Varsayılan olarak, SQL Server Management Studio (SSMS), çıkış ayarı Sonuçları Kılavuzaolduğunda, sonuçları tek bir satırda birleştirir. SSMS durum çubuğunda gerçek satır sayısı görüntülenir.
Diğer istemci uygulamaları, kodun birden çok satırın içeriğini birleştirerek uzun sonuçları tek, geçerli bir JSON dizesine yeniden birleştirmesini gerektirebilir. C# uygulamasında bu kodun bir örneği için bkz. C# istemci uygulamasında FOR JSON çıktısının kullanımı.
Sonuçlar bir JSON nesneleri dizisi olarak biçimlendirilir.
JSON dizisindeki öğe sayısı, SELECT deyiminin sonuçlarındaki satır sayısına eşittir (FOR JSON yan tümcesi uygulanmadan önce).
SELECT deyiminin sonuçlarındaki her satır (FOR JSON yan tümcesi uygulanmadan önce) dizide ayrı bir JSON nesnesine dönüşür.
SELECT deyiminin sonuçlarındaki her sütun (FOR JSON yan tümcesi uygulanmadan önce) JSON nesnesinin özelliğine dönüşür.
Hem sütunların adları hem de değerleri JSON söz dizimine göre kaçıştırılır. Daha fazla bilgi için bkz. FOR JSON'in özel karakterleri ve denetim karakterlerini nasıl kaçışa aldığı (SQL Server).
aşağıda, FOR JSON
yan tümcesinin JSON çıkışını nasıl biçimlendirdiğini gösteren bir örnek verilmiştir.
A | B | C | D |
---|---|---|---|
10 | 11 | 12 | X |
20 | 21 | 22 | Y |
30 | 31 | 32 | Z |
[{
"A": 10,
"B": 11,
"C": 12,
"D": "X"
}, {
"A": 20,
"B": 21,
"C": 22,
"D": "Y"
}, {
"A": 30,
"B": 31,
"C": 32,
"D": "Z"
}]
Ekinlikler
31 Mar 23 - 2 Nis 23
En büyük SQL, Fabric ve Power BI öğrenme etkinliği. 31 Mart – 2 Nisan. 400 ABD doları tasarruf etmek için FABINSIDER kodunu kullanın.
Bugün kaydolunEğitim
Belgeler
JSON'a Null Değerler Ekleme - INCLUDE_NULL_VALUES Seçeneği - SQL Server
JSON'a Null Değerler Ekleme - INCLUDE_NULL_VALUES Seçeneği
SQL Server'da JSON ile ilgili yaygın sorunları çözme - SQL Server
SQL Server'da JSON ile ilgili yaygın sorunları çözme
JSON'dan köşeli parantez kaldırma - WITHOUT_ARRAY_WRAPPER Seçeneği - SQL Server
JSON'dan Köşeli Parantez Kaldırma - WITHOUT_ARRAY_WRAPPER Seçeneği