問題タブ [sql-server-json]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
json - T-SQL を使用した動的 JSON 解析
REST API 呼び出しの応答として、非常に構造化されていない JSON 文字列があります。
すべての子要素がテーブルの列を表すように、T-SQL を使用してこのオブジェクトを動的に解析するにはどうすればよいですか? さらに重要なことはType
、 、Type_125478
、Type_SD
オブジェクトをどのように処理するかです。実際には同じ構造 ( Model, Manufacturer
) ですが、名前が異なる場合もあります。また、デバイスが新しい識別子 ( ) を送信する可能性があることにも注意してType_XYZ
ください。これは以前には存在しませんでしたが、幸いなことに同じ構造 ( Model, Manufacturer
) を持っています。
json - TSQL: JSON パスの再帰的降下
保存されたドキュメントを使用して、TSQL クエリ内で$..
in関数を利用したいと考えていました。残念ながらうまくいきません:json_value()
json
JSON パスの形式が正しくありません。予期しない文字「.」2の位置にあります。
ドキュメントによると、次のことを行う意図さえありませんでした。
パス ステップには、次の要素と演算子を含めることができます。
キー名。たとえば、$.name と $."first name" です。キー名がドル記号で始まる場合、またはスペースなどの特殊文字が含まれている場合は、引用符で囲みます。
配列要素。たとえば、$.product[3] です。配列はゼロベースです。
ドット演算子 (.) は、オブジェクトのメンバーを示します。たとえば、$.people 1 .surname では、surname は people の子です。
TSQL テーブルの列に格納されたa
構造化された任意のレベルで属性を見つける方法はありますか?json
たとえば、ドキュメントa
の任意のレベルにあるとしましょう:json
select json_value(json, '$..a') from data
列の次の値に対して両方の値 (したがって1, 2
) を返します。data.json
最初:
2番目:
sql - SQL ServerはJSONを解析して別のテーブルを更新します
列の 1 つに JSON データを含むテーブルがあり、JSON データを解析して一時テーブルに挿入しようとしています。
次のエラーが表示されます。
データ型 nvarchar を数値に変換中にエラーが発生しました
列をコメントアウトすると、同じことがうまくいきCost
ます。
Cost テーブルのサンプル JSON データ