将json列数据转换为sql server 2012中的表

时间:2016-10-18 12:29:42

标签: json sql-server-2012

我将json存储在包含300万行的表中。 单行包含以下格式的json

[
   {
      "Transaction":[
         {
            "ProductInfo":[
               {
                  "LINE_NO":"1",
                  "STOCKNO":"890725471381116060"
               },
               {
                  "LINE_NO":"2",
                  "STOCKNO":"890725315884216020"
               }
            ]
         }
      ],
      "Payment":[
         {
            "ENTSRLNO":"1",
            "DOCDT":"08/25/2016"
         }
      ],
      "Invoice":[
         {
            "SALES_TYPE":"Salesinvoice",
            "POS_CODE":"A20",
            "CUSTOMER_ID":"0919732189692",
            "TRXN_TYPE":"2100",
            "DOCNOPREFIX":"CM16",
            "DOCNO":"1478",
            "BILL_DATE":"08/25/2016 03:59:07"
         }
      ]
   }
]

我想在三个不同的表

中转储json
  1. ProductInfo
  2. 付款表
  3. 发票
  4. 如何以优化方式执行上述任务?

1 个答案:

答案 0 :(得分:1)

最有效的方法是编写一个过程并在sql server中使用open json 检查以下链接: https://msdn.microsoft.com/en-IN/library/dn921879.aspx