Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Menukar Tatasusunan SQL Objek kepada Tatasusunan Nilai dalam JSON (SQL Server 2016)?

Bagaimana untuk Menukar Tatasusunan SQL Objek kepada Tatasusunan Nilai dalam JSON (SQL Server 2016)?

Patricia Arquette
Patricia Arquetteasal
2025-01-09 18:47:41708semak imbas

How to Convert a SQL Array of Objects to an Array of Values in JSON (SQL Server 2016)?

Penukaran JSON SQL Server 2016: Tatasusunan Objek kepada Tatasusunan Nilai

SQL Server 2016 menawarkan keupayaan JSON yang berkuasa, memudahkan transformasi data untuk pelaporan dan penyepaduan. Contoh ini menangani keperluan biasa: menukar tatasusunan SQL objek kepada tatasusunan nilai yang lebih ringkas dalam struktur JSON.

Senario:

Pertimbangkan jadual, #temp, yang mengandungi data seperti ini:

#temp Table:

| item_id | |---|---| | 1234 | | 5678 | | 7890 |

Matlamatnya adalah untuk mengubah data ini menjadi JSON, mempersembahkan nilai item_id sebagai tatasusunan tunggal, bukan tatasusunan objek.

Struktur JSON Sasaran:

<code class="language-json">{
  "ids": [
    "1234",
    "5678",
    "7890"
  ]
}</code>

Penyelesaian:

Pertanyaan cekap ini mencapai penukaran yang diingini:

<code class="language-sql">SELECT  
    JSON_QUERY('[' + STUFF((
        SELECT ',' + '"' + CAST(item_id AS VARCHAR(MAX)) + '"' 
        FROM #temp
        FOR XML PATH('')),1,1,'') + ']' ) AS ids  
FOR JSON PATH, WITHOUT_ARRAY_WRAPPER;</code>

Penjelasan:

Pertanyaan bijak menggunakan FOR XML PATH('') untuk mencipta rentetan dipisahkan koma bagi nilai item_id yang dipetik. STUFF mengalih keluar koma di hadapan. Rentetan yang terhasil kemudiannya disertakan dalam kurungan segi empat sama ([]) untuk membentuk tatasusunan JSON yang sah, yang dihuraikan menggunakan JSON_QUERY. Akhir sekali, FOR JSON PATH, WITHOUT_ARRAY_WRAPPER memformatkan output sebagai objek JSON yang diingini.

Output:

Melaksanakan pertanyaan menghasilkan struktur JSON sasaran:

<code class="language-json">{
  "ids": [
    "1234",
    "5678",
    "7890"
  ]
}</code>

Kaedah ini menyediakan cara ringkas dan berkesan untuk mengurus transformasi tatasusunan JSON dalam SQL Server 2016.

Atas ialah kandungan terperinci Bagaimana untuk Menukar Tatasusunan SQL Objek kepada Tatasusunan Nilai dalam JSON (SQL Server 2016)?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn