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`)欢迎分享,转载请注明来源:内存溢出
评论列表(0条)