`
chenweiqiao
  • 浏览: 1630 次
  • 性别: Icon_minigender_1
  • 来自: 广州
文章分类
社区版块
存档分类
最新评论

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

阅读更多
假设现在有如下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
分享到:
评论

相关推荐

    解析mysql不重复字段值求和

    在使用mysql时,有时需要查询出某个字段不重复的记录,虽然mysql提供有distinct这个关键字来过滤掉多余的重复记录只保留一条,但往往只用它来返回不重复记录的条数,而不是用它来返回不重记录的所有值。其原因是...

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

    在MySQL中,当我们需要查询某个字段不重复的所有记录时,通常会使用`DISTINCT`关键字。然而,`DISTINCT`只能用于去除单个字段的重复值。如果我们要去除多个字段的重复组合,就需要采取更复杂的方法。在提供的描述中...

    MySQL根据某一个或者多个字段查找重复数据的sql语句

    1.表中有id和name 两个字段,查询出name重复的所有数据 select * from xi a where (a.username) in (select username from xi group by username having count(*) > 1) 2、查询出所有数据进行分组之后,和重复数据...

    MySQL 查询重复内容只显示一条

    前者创建了一个新的不含重复记录的表,后者则删除了所有非最小`id`的重复记录。 5. **源码与工具**:标签中的“源码”可能指的是用于实现上述查询的SQL语句,而“工具”可能是指使用MySQL客户端或其他数据库管理...

    MySQL大表中重复字段的高效率查询方法

    如果仅仅是查找数据库中name不重复的字段,很容易 代码如下:SELECT min(`id`),`name` FROM `table` GROUP BY `name`; 但是这样并不能得到说有重复字段的id值。(只得到了最小的一个id值)查询哪些字段是重复的也容易 ...

    sql_按照某一个字段进行去重后获取全部字段

    在实际工作中,我们经常会遇到需要对数据表中的记录进行去重的情况,尤其是当某个字段作为唯一标识符时,我们希望能够基于这个字段获取最新的、唯一的或者汇总的数据记录。下面将详细阐述这一知识点。 ### SQL 去重...

    MySQL中distinct语句去查询重复记录及相关的性能讨论

    当查询的数据可能存在重复记录时,使用`DISTINCT`可以帮助我们过滤掉这些重复项,只保留唯一的数据。 在最简单的形式中,`DISTINCT`可以和`*`一起使用,如`SELECT DISTINCT * FROM tableName`,这将返回表`...

    解析mysql中:单表distinct、多表group by查询去除重复记录

    全连接无效,在使用mysql时,有时需要查询出某个字段不重复的记录,虽然mysql提供有distinct这个关键字来过滤掉多余的重复记录只保留一条,但往往只用它来返回不重复记录的条数,而不是用它来返回不重复记录的所有值...

    使用distinct在mysql中查询多条不重复记录值的解决办法

    在使用mysql时,有时需要查询出某个字段不重复的记录,虽然mysql提供有distinct这个关键字来过滤掉多余的重复记录只保留一条,但往往只用它来返回不重复记录的条数,而不是用它来返回不重记录的所有值。其原因是...

    mysql删除表中某一字段重复的记录

    ### 方法一:使用子查询删除重复记录 这是在描述中提到的一种方法,通过子查询找到每个`sid`的最小`id`,然后删除其他所有`id`不等于最小`id`的记录。 ```sql DELETE FROM event AS e WHERE id != (SELECT MIN(id) ...

    MySQL 多表关联一对多查询实现取最新一条数据的方法示例

    本文实例讲述了MySQL 多表关联一对多查询实现取最新一条数据的方法。分享给大家供大家参考,具体如下: MySQL 多表关联一对多查询取最新的一条数据 遇到的问题 多表关联一对多查询取最新的一条数据,数据出现重复 ...

    MySql高级Sql查询

    例如,你可以用子查询来找出某个字段的最大值,然后在主查询中找到所有与此最大值相等的记录。 3. **聚合函数**:如COUNT(), SUM(), AVG(), MAX()和MIN(),这些函数用于对一组值进行统计计算。例如,COUNT()可以...

    MySql基本查询、连接查询、子查询、正则表达查询讲解

    使用AND关键字时,只有同时满足所有查询条件的记录会被查询出来。如果不满足这些查询条件的其中一个,这样的记录将被排除掉。AND关键字的语法规则如下: 条件表达式1 AND 条件表达式2 [ … AND 条件表达式n ] 其中,...

    韩忠康MySQL笔记

    当需要基于某个条件(如找到与最大值相等的字段值)进行查询时,子查询非常有用。子查询可以出现在查询的不同位置,如`WHERE`子句、`FROM`子句(作为虚表)或其他子句中,根据需求和返回值的类型,子查询有不同的...

    MySQL数据库PDF文档

    主键约束是指对表中的每一条记录的唯一标识,非空约束是指某个字段不能为null,唯一性约束是指某个字段的值不能重复。 查询语言 查询语言是指对数据库表中的数据进行查询和提取的语言。常见的查询语言包括SELECT...

    SQL中distinct的用法(四种示例分析)

    在使用mysql时,有时需要查询出某个字段不重复的记录,虽然mysql提供有distinct这个关键字来过滤掉多余的重复记录只保留一条,但往往只 用它来返回不重复记录的条数,而不是用它来返回不重记录的所有值。其原因是...

    mysql去重的两种方法详解及实例代码

    在使用MySQL时,有时需要查询出某个字段不重复的记录,虽然mysql提供 有distinct这个关键字来过滤掉多余的重复记录只保留一条,但往往只用它来返回不重复记录的条数,而不是用它来返回不重记录的所有值。其原因是 ...

Global site tag (gtag.js) - Google Analytics