请教SQL语句
表a结构为
字段1 | 字段2
------------------
A01 001
A01 002
A01 003
A01 009
B01 001
B01 002
B01 089
...
现请教用SQL达到以下数据要求:
字段1 | 字段2 | 字段3 | 字段4 | 字段5 | 字段6
A01 001 002 003 009
B01 001 002 089
...
谢谢!
------解决方案--------------------MySQL4.0 没有存储过程。
select Name ,sum(case when Subject = '语文 ' then ifnull(Result,0) else 0 end ) as '语文 ',sum(case when Subject = '数学 ' then ifnull(Result,0) else 0 end ) as '数学 ',sum(case when Subject = '英语 'then ifnull(Result,0) else 0 end ) as '英语 '
from t
where 1 group by Name
实际使用时,要注意转换标点符号。( '语文 ' 两面的单引号可能不对)
本sql没有经过调试。
------解决方案--------------------先给相同的f1的数据编号。然后用个理论上限,比如20个
然后用 whalefish2001(whale) 方法 转换就可以