mysql 拼列

mysql 拼列,第1张

呵,这题有点复杂,分太少了,算了,还是帮你回答吧:

mysql>SET @EE=''

mysql>SELECT @EE:=CONCAT(@EE,'SUM(IF(科目=''',科目,'''',',分数,0)) AS ',科目,',') FROM (SELECT DISTINCT 科目 FROM 表名) A

mysql>SET @QQ=CONCAT('SELECT a.学生,',LEFT(@EE,LENGTH(@EE)-1),' , b.科目数 as 参加科目数 FROM 表名 a,(select 学生,count(*) as 科目数 from 表名 group by 学生) b where a.学生=b.学生 GROUP BY a.学生')

mysql>PREPARE stmt2 FROM @QQ

mysql>EXECUTE stmt2

mysql>dellocate PREPARE stmt2

使用下面的SQL语句,运行一次后就何必了,然后就可以删除Adress2列:

update Adress set Adress1=concate(Adress1,Adress2)

就题答题:拼接可以使用concat

where concat(',',concat(`type`, ',')) like '%111%'

但是呢,你想要的效果是不是判断一个数是否在一个由逗号连接的数列中,这种情况可以使用find_in_set

where find_in_set('111',`type`)


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/6170789.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-17
下一篇 2023-03-17

发表评论

登录后才能评论

评论列表(0条)

保存