当前位置: 首页 > 图文教程 > 数据库 > MYSQL > MySQL 查询某个字段不重复的所有记录

MYSQL
ext3下删除mysql数据库的数据恢复案例
mysql性能的检查和调优方法
数据库查询的分页优化技巧
如何才能有效对抗MySQL数据库的解密高手
mysql中从字段中URL提取域名信息
教你四种方法用来查看mysql版本
MySQL数据库数据备份和恢复详解
ubuntu下简单配置mysql数据库
MySQL数据库的root口令恢复方法总结
再谈 MySQL 数据库备份恢复和乱码问题
修改 Navicat 默认备份路径
MySQL数据库中修改密码及访问限制设置详解
小白讲座:在win下mysql备份恢复命令概括
菜鸟大讲堂:如何查看mysql版本的四种方法
扫盲大讲堂:mysql出错的代码解析及解答
MySQL安全大讲堂:MySQL数据库安全配置
怎样在vc、delphi中使用mysql(mysql odbc驱动的使用)
MySQL数据导入与导出之二
如何实现MySQL中的用户管理?
win 2000 安装 mysql-shareware-3.22.32-win

MYSQL 中的 MySQL 查询某个字段不重复的所有记录


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 330 ::
收藏到网摘: n/a

现在想从这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