MySQL 查询某个字段不重复的所有记录
更新时间:2009年05月07日 16:00:50 作者:
现在想从这5条记录中查询所有title不重复的记录
假设现在有如下N条记录 表明叫book
id author title
1 aaa AAA
2 bbb BBB
3 ccc CCC
4 ddd DDD
5 eee AAA
现在想从这5条记录中查询所有title不重复的记录
select distinct title,author from book这样是不可以的 因为distinct只能作用于一个字段
想请教应该怎么写
答案:
select a.* from book a right join (
select max(id) id from book group by title) b on b.id = a.id
where a.id is not null
如果选第一条符合的记录,那么用min(id)就行了
select a.* from book a right join (
select min(id) id from book group by title) b on b.id = a.id
where a.id is not null
id author title
1 aaa AAA
2 bbb BBB
3 ccc CCC
4 ddd DDD
5 eee AAA
现在想从这5条记录中查询所有title不重复的记录
select distinct title,author from book这样是不可以的 因为distinct只能作用于一个字段
想请教应该怎么写
答案:
复制代码 代码如下:
select a.* from book a right join (
select max(id) id from book group by title) b on b.id = a.id
where a.id is not null
如果选第一条符合的记录,那么用min(id)就行了
复制代码 代码如下:
select a.* from book a right join (
select min(id) id from book group by title) b on b.id = a.id
where a.id is not null
相关文章
解决MySQL8.0本地计算机上的MySQL服务启动后停止没有报告任何错误的问题(最新推荐)
解决MySQL服务启动后停止没有报告任何错误的方法包括修改my.ini文件编码为ANSI、修正MySQL服务可执行文件的路径以及关闭系统管理中的MySQL80服务,本文介绍解决MySQL8.0本地计算机上的MySQL服务启动后停止没有报告任何错误,感兴趣的朋友一起看看吧2025-03-03


最新评论