[mysql]再求个sql语句

jom_ch 2012-04-17 02:39:16
...全文
109 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
蓝色的雨哎 2012-04-17
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 的回复:]

SQL code
select id,
max(if(value='A','A',null)),
max(if(value='B','B',null)),
max(if(value='C','C',null))
from table1
group by id
[/Quote]
能不能说一下max()用法?
rucypli 2012-04-17
  • 打赏
  • 举报
回复
select id,group_concat(case when value='A' then 'A'  end) Value,
group_concat(case when value='B' then 'B' end) Value,
group_concat(case when value='C' then 'C' end) Value
from tb
group by id
yumenfeiyu945 2012-04-17
  • 打赏
  • 举报
回复
select id,if(FIND_IN_SET('A', `values`)>0,'A',null),if(FIND_IN_SET('B', `values`)>0,'B',null),if(FIND_IN_SET('C', `values`)>0,'C',null) from
(
select id,group_concat(value) `values` from test group by id
) t
ACMAIN_CHM 2012-04-17
  • 打赏
  • 举报
回复
select id,
max(if(value='A','A',null)),
max(if(value='B','B',null)),
max(if(value='C','C',null))
from table1
group by id
ACMAIN_CHM 2012-04-17
  • 打赏
  • 举报
回复
http://blog.csdn.net/acmain_chm/article/details/4283943
MySQL交叉表
在某些数据库中有交叉表,但在MySQL中却没有这个功能,但网上看到有不少朋友想找出一个解决方法,特发贴集思广义。http://topic.csdn.net/u/20090530/23/0b782674-4b0b-4cf5-bc1a-e8914aaee5ab.html?96198现整理解法如下:数据样本: create table tx( id int primary key, c1 c...

56,678

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧