【问题标题】:Select first 10 distinct rows in mysql在mysql中选择前10个不同的行
【发布时间】:2011-03-24 16:38:11
【问题描述】:

在 MySQL 中有什么方法可以获取表的前 10 个不同的行。

即比如……

SELECT TOP 10 distinct * 
FROM people 
WHERE names='SMITH'
ORDER BY names asc

但是这种方法实际上并不起作用,因为它给出了错误:“语法错误。在查询表达式中缺少运算符 distinct *”

【问题讨论】:

    标签: mysql


    【解决方案1】:
    SELECT  DISTINCT *
    FROM    people
    WHERE   names = 'Smith'
    ORDER BY
            names
    LIMIT 10
    

    【讨论】:

    • +1。嗨,夸斯诺伊。我要感谢你的博客质量很高。我是你的粉丝。 :)
    【解决方案2】:
    SELECT * 
    FROM people 
    WHERE names ='SMITH'
    ORDER BY names asc
    limit 10
    

    如果您需要添加 group by 子句。 如果您搜索 Smith,您将不得不对其他内容进行排序。

    【讨论】:

      【解决方案3】:

      试试这个SELECT DISTINCT 10 * ...

      【讨论】:

      • 我认为他在使用 MS SQL?问题是排序
      • 这就是我放的... SELECT DISTINCT TOP 10 * [rest of sql]
      猜你喜欢
      • 2018-09-20
      • 2011-12-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-01-02
      • 1970-01-01
      • 2012-04-07
      • 1970-01-01
      相关资源
      最近更新 更多