Redian新闻
>
请问sql语句能不能实现这样的功能
avatar
请问sql语句能不能实现这样的功能# Database - 数据库
S*t
1
我有一个表
username itemname
a i1
a i2
b i1
b i3
a i4
...
我希望能够吧某个user的所有item放在一行里,就像这样
username itemname
a i1,i2,i4
b i1,i3
我用了 select * from table1 group by username;
好像只能出现第一个itemname.
sql能够实现这样的功能吗?我用的mysql
avatar
a*s
3
select username, group_concat(itemname) from tbl group by username
if you want to only concatenate the unique values, then
select username, group_concat(distinct itemname order by itemname separator
',') from tbl group by username
check your mysql version.

【在 S*******t 的大作中提到】
: 我有一个表
: username itemname
: a i1
: a i2
: b i1
: b i3
: a i4
: ...
: 我希望能够吧某个user的所有item放在一行里,就像这样
: username itemname

avatar
S*t
4
this is great! thanks.

separator

【在 a*******s 的大作中提到】
: select username, group_concat(itemname) from tbl group by username
: if you want to only concatenate the unique values, then
: select username, group_concat(distinct itemname order by itemname separator
: ',') from tbl group by username
: check your mysql version.

相关阅读
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。