这个SQL怎么写?

image.png

刚才弄错了,在项目表里有行项目,也有列项目,属于行项目的,列没有值,属于列项目的,行没有值。行和列不可能同时有值

再重新更正一下:

image.png

nhb2318 发布于 2021-6-28 13:21 (编辑于 2021-6-28 15:59)
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共4回答
最佳回答
0
axingLv6专家互助
发布于2021-6-28 14:45

select a.项目,b.坐标,b.时间,b.数据 from 

项目表 a

join 数据表 b on a.表编号=b.表编号 and concat(a.行,'_',a.列)=b.坐标 

where a.代码='111'

and a.表编码='ZB01'

order by b.时间

  • nhb2318 nhb2318(提问者) 不行,是空的 可能 是我刚才弄错了,在项目表里有行项目,也有列项目,属于行项目的,列没有值,属于列项目的,行没有值。行和列不可能同时有值
    2021-06-28 15:37 
  • axing axing 回复 nhb2318(提问者) 除非你上面的表画错了
    2021-06-28 15:43 
最佳回答
0
唱跳rap全能选手Lv7中级互助
发布于2021-6-28 13:28

你是什么数据库?

最佳回答
0
qiqits1984Lv6中级互助
发布于2021-6-28 15:48(编辑于 2021-6-28 16:05)

SELECT

a.项目,

b.坐标,

b.时间,

b.数据 

FROM

项目表 a

JOIN  数据表 b  ON a.表编号 = b.表编号   //JOIN 如果表中有至少一个匹配,则返回行

AND  concat( a.行, '_', a.列 )=  b.坐标  //concat()拼接字符串

AND a.日期 = b.时间

WHERE

a.代码 = '111'  AND a.表编码 = 'ZB01' 

ORDER BY

b.时间

最佳回答
0
CSJLv5见习互助
发布于2021-6-28 20:10

也许这段sql对你会有帮助

SELECT 

    SUBSTRING_INDEX(SUBSTRING_INDEX('7654,7698,7782,7788',',',help_topic_id+1),',',-1) AS num 

FROM 

    mysql.help_topic 

WHERE 

    help_topic_id < LENGTH('7654,7698,7782,7788')-LENGTH(REPLACE('7654,7698,7782,7788',',',''))+1

————————————————

原文链接:https://blog.csdn.net/pjymyself/article/details/81668157

  • 4关注人数
  • 752浏览人数
  • 最后回答于:2021-6-28 20:10
    请选择关闭问题的原因
    确定 取消
    返回顶部