شماره تماس 09336863931 | 09178169907 پست الکترونیک info@provid.ir

دریافت داده های JSON از کوئری های SQL Server – قسمت چهارم

با سری آموزش “دریافت داده های JSON از کوئری های SQL Server – قسمت چهارم” از وبسایت پرووید در خدمت شما هستیم. به ادامه ی مطلب بروید.

نام گذاری و تو در تویی نتایج

می توانید با در نظر گرفتن نام های مستعار (Alias) برای ستون های داده های JSON نام های متفاوتی در نظر بگیرید:

Select FirstName As FName
From Customers
Where Id = 1
FOR JSON AUTO

نتیجه ی دستور بالا به صورت زیر خواهد بود:

“[{“”FName””:””Peter””}]”

با استفاده از کلمه ی کلیدی FOR JSON AUTO می توانید جداول مرتبط را با هم ترکیب کرده و نتیجه را در قالب اشیای تو در تو (Nested Objects) دریافت کنید. کد زیر دو جدول Customer و SalesOrder را با هم ترکیب می کند.

Select *
From Customers As C JOIN
SalesOrders As S
On C.Id = S.CustId
Where C.Id = 1
FOR JSON AUTO

نتیجه ی دستور بالا داده زیر است که در آن دو شی SalesOrder در درون شی Customer قرار گرفته است. دقت کنید که شی SalesOrder توسط نام مستعار S در دستور SQL مشخص شده است:

“[{“”Id””:1,””FirstName””:””Peter””,””LastName””:””Vogel””,””BirthDate””:””1953-05-31″”,
“”S””:[
{“”Id””:1,””OrderDate””:””2017-10-12″”,””CustId””:””1″”},
{“”Id””:2,””OrderDate””:””2017-09-09″”,””CustId””:””1″”}
]
}
]”

همانطور که می بینید، در نظر گرفتن نام های مستعار معنادار برای جداول می تواند خوانایی را افزایش دهد.

نکته ی آخر اینکه می توانید با استفاده از کلمه ی کلیدی FOR JSON PATH به جای FOR JSON AUTO اشیا تو در تو را در نتیجه ی دریافتی اجبار کنید. با استفاده از این روش، ستون هایی که نام مستعار یکسان دارند در درون اشیا JSON گروه بندی می شوند. دستور زیر با در نظر گرفتن نام های مستعار Name.First و Name.Last برای ستون های FirstName و LastName داده های JSON را به صورت تو در تو ایجاد می کنیم. نکته ی بعدی این که در استفاده از این روش می توانید نام های مستعار را هم درون تک کوتیشین و هم براکت قرار دهید. در مثال زیر، هر دوی این دو مورد را مشاهده می کنید.

Select id, FirstName as [Name.First], ‘Name.Last’
From Customers
Where Id = 1
FOR JSON PATH

نتیجه ی دستور بالا، داده های زیر است:

“[{“”id””:1,
“”Name””:{
“”First””:””Peter””,
“”Last””:””Vogel””
}
}]”

امیدواریم که از این مقاله ی آموزشی از وبسایت پرووید استفاده ی مفید کرده باشید.

نظر بدهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *