sql - 将表格行转换为 json 格式
问题描述
我的表中有 1500 行。
在将表行转换为 json 时
查询
select * from tblbook for json auto
;
只有一行转换为 json。
请帮我。评论表示赞赏
示例 json 数据:
[ {
"bid":0,
"book_type":1,
"book_id":"426128_1_En",
"book_s50_due_dt":"2017-08-02T00:00:00",
"book_s50_finish_dt":"2017-08-02T00:00:00",
"book_s600_recd_dt":"2017-08-29T00:00:00",
"book_s600_due_dt":"2017-08-28T00:00:00",
"book_s600_finish_dt":"2017-08-29T00:00:00",
"book_s650_recd_dt":"2017-08-29T00:00:00",
"book_s650_due_dt":"2017-08-29T00:00:00",
"book_s650_finish_dt":"2017-08-29T00:00:00",
"book_cover_recd_dt":"2018-07-02T11:59:00",
"book_cover_due_dt":"2018-07-05T11:59:00",
"book_cover_recd_flag":false,
"book_status_remarks":" 10-Succ 7\/20",
"stage":"s200",
"issue_pages":0,
"book_ms_pages":0,
"book_cover_pages":2,
"book_blank_pages":0,
"book_ce_pages":0,
"book_inputrecdType":"Pdf",
"book_processType":"Stapp",
"book_copubname":"",
"book_authcorr_status":0,
"book_totalservice":2,
"book_receiptType":"",
"book_shortcutwf":1,
"book_trichy_PE_tag":0,
"book_trichy_CE_tag":0,
"book_trichy_location":0,
"book_trichy_art_location":0,
"book_FastTrack":false,
"book_Hold":false,
"book_Withdrawn":false,
"book_Project_Manager":"",
"book_Spl_Instructions":true,
"book_CreditLine":"",
"book_Cust_Type":"LNCS ENGG",
"book_arabic_pages":0,
"book_roman_pages":0,
"book_fm_elements":"",
"book_bm_elements":"",
"book_bw_figures_count":0,
"book_color_figures_count":0,
"book_scan_status":0
这是运行上述查询时的输出。
解决方案
我已经用测试表尝试了该代码,它工作得很好,我的猜测是你有太多的行,所以要确保你可以尝试这个解决方法:
假设“bid”列是主键并且没有重复项,您可以尝试运行以下命令:
Select 'Select TOP 1 * from tblbook where bid = ' + cast(bid as varchar) + ' for json auto;' from tblbook
该代码将生成查询,并且每个查询都会为表的每一行转换一行,您所要做的就是复制粘贴并执行,在执行之前确保切换到“文本中的结果”(SQL Server 上的快捷键 Ctrl+T,然后 Ctrl+D 切换回网格),这应该是这样的(这个例子是我的测试表,是的,它是法语的):
JSON_F52E2B61-18A1-11d1-B105-00805F49916B
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
[{"Nom":1,"ProdId":100}]
(1 ligne affectée)
JSON_F52E2B61-18A1-11d1-B105-00805F49916B
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
[{"Nom":1,"ProdId":300}]
(1 ligne affectée)
JSON_F52E2B61-18A1-11d1-B105-00805F49916B
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
[{"Nom":1,"ProdId":500}]
(1 ligne affectée)
JSON_F52E2B61-18A1-11d1-B105-00805F49916B
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
[{"Nom":2,"ProdId":600}]
(1 ligne affectée)
您可以将其复制到 Notepad++ 之类的东西,以(1 ligne affectée)
使用替换功能擦除不需要的重复文本(如破折号)。
这是很多工作,但我希望这可以帮助您摆脱问题。
推荐阅读
- android - BleCharacteristicNotFoundException:未使用 UUID 找到特征。如何从蓝牙设备获取特征 UUID?
- ios - UICollectionViewCell 中的 iOS UIScrollView
- c++ - C++ 枚举类:强制转换为不存在的条目
- ios - 在 swift4 中使用 NSTimer 处理 UIPagecontrol
- shell - 需要使用 Unix shell 脚本在每行末尾添加空格
- angular - 延迟加载模块中的角度使用服务
- php - 数组上的“dump()”将显示的最大项目数?
- python - 在 conda 环境中安装 Tensorflow 2.0
- webpack - webpack-dev-server 告诉开发服务器在任何匹配 glob 的文件更新时重新加载浏览器?
- c# - 按钮返回变量字符串的值