将一组用逗号和分号分隔的数据专程行(mysql)

1,OK,1.400,6567;2,NG,0.000,0;3,OK,1.400,4812;4,OK,1.401,3127;5,NG,0.011,8931;6,OK,1.401,3054;7,NG,0.815,6872;8,OK,1.400,7465

固定是8组数据,每组数据用分号分开的,一组数据有四个字段,用逗号分开,怎么给他全写到统一行里(mysql),分成32个字段来存

FineReport shion 发布于 2023-5-17 14:09
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共2回答
最佳回答
1
CD20160914Lv8专家互助
发布于2023-5-17 14:15(编辑于 2023-5-17 14:26)

mysql数据库没有split函数。。你自定义一个函数。。

mysql如何实现split操作? - 简书 (jianshu.com)

然后依次截取成多列

如果用填报的话,放在帆软的设计器中设置公式比如:

=SPLIT(SPLIT(A1,";"),",")  

横向扩展。最后把它们通过填报写放数据库里面

image.png

image.png

固定列。好设置填报属性把32列全列出来。然后公式直接复制就行了

B列到后面所有列的公式写一样的都是这样:

=INDEXOFARRAY(SPLIT(SUBSTITUTE(A2,";",","),","),COL()-1)

image.png

image.png

  • shion shion(提问者) 这样可能可以,我之前想错了,我想成每个格子用sql函数了,这样可能不会卡,我试试
    2023-05-17 14:20 
  • CD20160914 CD20160914 回复 shion(提问者) 还有建议固定列。不要动态横向扩展列。不然填报属性不好设置。参考我上面更新的图片与设置
    2023-05-17 14:25 
最佳回答
0
青春只因年少Lv6中级互助
发布于2023-5-17 14:12

分成32个字段来存?没懂,存在一个字段内直接按这个格式写就行。

  • shion shion(提问者) 就是要在页面上展示出来,用帆软公式的话我怕数据多的话页面卡
    2023-05-17 14:16 
  • 3关注人数
  • 260浏览人数
  • 最后回答于:2023-5-17 14:26
    请选择关闭问题的原因
    确定 取消
    返回顶部