4
次のJSonデータがSql Serverにあります。Sql Server 2016テーブルの列からJSONテキストを読み取る方法
{
"PartnerName": null,
"PartnerCurrencyCode": "UAD",
"PricingConditions": [
{
"PricingConditionId": 659853,
"ConditionTypeCode": "ABCD",
"ConcessionItemTypeCode": "ABC",
"PriceLevel": null
}
],
"CurrencyMultiplier": 0
}
期待される成果は以下のとおりです。
PartnerName PartnerCode PartnerCurrencyCode PricingConditionId
NULL NULL UAD 659853
私は、SQL Server 2016は、JSONデータを読み取る能力を持っていることを読んで、以下のクエリを試してみました。
クエリ1:
SELECT * FROM OPENJSON(@json, '$')
クエリ2:
SELECT *
FROM OPENJSON(@json)
WITH (PartnerName NVARCHAR(50) '$.PartnerName',
PartnerCode nvarchar(50) '$.PartnerCode',
PartnerCurrencyCode nvarchar(50) '$.PartnerCurrencyCode',
PricingConditionId nvarchar(50) '$.PricingConditions.PricingConditionId')
クエリ2件の結果:
PartnerName PartnerCode PartnerCurrencyCode PricingConditionId
NULL NULL UAD NULL
は私が期待していた "PricingConditionId" 値がある - 659853
2番目のクエリから出力される出力は何ですか? –
@TimBiegeleisen 2番目のクエリ結果で質問を更新しました – Roshan