假设我有一个存储注册用户数据的表,这些记录可能有相同的注册名称,但有不同的电子邮件,如下所示:

我想要创建一个前端视图来操作这些数据,但是我不希望这些相同的名称重复显示,mysql语句查询可以输出类似的结果吗?

到目前为止,这是我所能做的结果,但它不能将相同的名称绑定到一个。
select * from `register`
where `fullname` in (
select `fullname` from `register`
group by `fullname` having count(*) > 1
)发布于 2018-06-08 09:16:19
您可以做的一件事是在重复的行上执行一个SELECT DISTINCT,并使用MYSQL中的GROUP_CONCAT();函数将您想要的值连接到一行中,并使用GROUP BY fullname来获得您想要的顺序。
请注意,我还将用户I放在分组行中,以便跟踪哪些I属于哪个名称。
SELECT
DISTINCT fullname as full_name,
GROUP_CONCAT(id SEPARATOR ', ') as user_ids,
GROUP_CONCAT(email SEPARATOR ', ') as emails
FROM
tbl_register
GROUP BY
tbl_register.fullname这样做是合乎逻辑的。希望这能帮上忙。:)
有关GROUP_CONCAT();函数的更多信息如下:小组
发布于 2018-06-08 08:34:11
试试这个:
SELECT DISTINCT *duplicate_column* FROM *table_name1* WHERE *col_id* IN (SELECT *cols_to_dusplay* FROM *table_name1* GROUP_BY *duplicate_column*https://stackoverflow.com/questions/50756181
复制相似问题