Sql server 如何使用返回值作为JSON键从SQL SERVER 2016返回JSON?

Sql server 如何使用返回值作为JSON键从SQL SERVER 2016返回JSON?,sql-server,json,Sql Server,Json,我有下面的表结构 ╔══════════════════════╦═══════╦══════════════════════╗ ║ key ║ lang ║ text ║ ╠══════════════════════╬═══════╬══════════════════════╣ ║ epost.leder.lykketil ║ nn-NO ║ Lykke til! ║ ║ epost.leder.lyk

我有下面的表结构

╔══════════════════════╦═══════╦══════════════════════╗
║         key          ║ lang  ║         text         ║
╠══════════════════════╬═══════╬══════════════════════╣
║ epost.leder.lykketil ║ nn-NO ║ Lykke til!           ║
║ epost.leder.lykketil ║ de-DE ║ Viel Erfolg!         ║
║ epost.leder.lykketil ║ pl-PL ║ Powodzenia!          ║
║ epost.leder.lykketil ║ en-US ║ Good luck!           ║
║ epost.leder.lykketil ║ sv-SE ║ Lycka till!          ║
║ epost.leder.lykketil ║ da-DK ║ God fornøjelse!      ║
║ epost.leder.lykketil ║ lt-LT ║ Sėkmės!              ║
║ epost.leder.lykketil ║ lv-LV ║ Labu veiksmi!        ║
║ epost.leder.lykketil ║ et-EE ║ Õnn kaasa!           ║
║ epost.leder.lykketil ║ nb-NO ║ Lykke til!           ║
║ lp.aggregertrapport  ║ pl-PL ║ Zagregowany raport   ║
║ lp.aggregertrapport  ║ nn-NO ║ Aggregert rapport    ║
║ lp.aggregertrapport  ║ de-DE ║ Aggregierter Bericht ║
║ lp.aggregertrapport  ║ sv-SE ║ Aggregerad rapport   ║
║ lp.aggregertrapport  ║ en-US ║ Aggregated report    ║
║ lp.aggregertrapport  ║ da-DK ║ Samlet rapport       ║
╚══════════════════════╩═══════╩══════════════════════╝
[{
  "key": "epost.leder.lykketil",
  "text": {
    "nn-NO": "Lykke til!",
    "de-DE": "Viel Erfolg!",
    "pl-PL": "Powodzenia!",
    "en-US": "Good luck!",
    ...
    "nb-NO": "Lykke til!"
  }
},
{
  "key": "lp.aggregertrapport",
  ...
}]
我想要下面的结构

╔══════════════════════╦═══════╦══════════════════════╗
║         key          ║ lang  ║         text         ║
╠══════════════════════╬═══════╬══════════════════════╣
║ epost.leder.lykketil ║ nn-NO ║ Lykke til!           ║
║ epost.leder.lykketil ║ de-DE ║ Viel Erfolg!         ║
║ epost.leder.lykketil ║ pl-PL ║ Powodzenia!          ║
║ epost.leder.lykketil ║ en-US ║ Good luck!           ║
║ epost.leder.lykketil ║ sv-SE ║ Lycka till!          ║
║ epost.leder.lykketil ║ da-DK ║ God fornøjelse!      ║
║ epost.leder.lykketil ║ lt-LT ║ Sėkmės!              ║
║ epost.leder.lykketil ║ lv-LV ║ Labu veiksmi!        ║
║ epost.leder.lykketil ║ et-EE ║ Õnn kaasa!           ║
║ epost.leder.lykketil ║ nb-NO ║ Lykke til!           ║
║ lp.aggregertrapport  ║ pl-PL ║ Zagregowany raport   ║
║ lp.aggregertrapport  ║ nn-NO ║ Aggregert rapport    ║
║ lp.aggregertrapport  ║ de-DE ║ Aggregierter Bericht ║
║ lp.aggregertrapport  ║ sv-SE ║ Aggregerad rapport   ║
║ lp.aggregertrapport  ║ en-US ║ Aggregated report    ║
║ lp.aggregertrapport  ║ da-DK ║ Samlet rapport       ║
╚══════════════════════╩═══════╩══════════════════════╝
[{
  "key": "epost.leder.lykketil",
  "text": {
    "nn-NO": "Lykke til!",
    "de-DE": "Viel Erfolg!",
    "pl-PL": "Powodzenia!",
    "en-US": "Good luck!",
    ...
    "nb-NO": "Lykke til!"
  }
},
{
  "key": "lp.aggregertrapport",
  ...
}]

我在SQL Server 2016中尝试了几种使用
选择JSON
功能的解决方案,但我不知道如何使用返回值作为键。

显示到目前为止您的查询-您尝试了什么,并解释其错误原因。我将看看我能做些什么。。。我已经删除了所有我一直在做的事情。但大多数情况下,它会为表中的每一行生成一个json对象。我搞不清分组,也搞不清关键部分的价值。你有什么办法吗@ChristianWattengårdI最终使用LINQPad生成结构,并使用JSON.net将其转储到一个文本文件:)我的目标是将我目前正在构建的系统的一些翻译传输到一个新的数据库系统(DocumentDB),显示到目前为止您的查询-您已经尝试了什么,并解释为什么它是错误的。我会看看我能做些什么。。。我已经删除了所有我一直在做的事情。但大多数情况下,它会为表中的每一行生成一个json对象。我搞不清分组,也搞不清关键部分的价值。你有什么办法吗@ChristianWattengårdI最终使用LINQPad生成结构,并使用JSON.net将其转储到文本文件:)我的目标是将我当前构建的系统的一些翻译传输到一个新的数据库系统(DocumentDB)