php - mysql 查询 - 如何创建此查询?

标签 php mysql

我在创建查询时遇到问题。

假设我在表中有此数据:字段 ID:

10 20 30 40 30 20 60 70 20

我需要显示所有结果,但是这样:

10 20 30 40 60 70 20 30 20

如您所见,我对它们进行了排序,但它必须只采用唯一值,直到没有更多值为止,然后添加左侧应用相同的过滤器...只有唯一...这样直到它显示所有结果数据库。

有什么想法吗? 谢谢

最佳答案

为id添加序号,按序号和id排序。

SELECT id
FROM
(
    SELECT id, @cnt := IF(id = @id, @cnt + 1, 1), @id := id, @cnt AS cnt
    FROM 
    (
        SELECT id
        FROM table1
        ORDER BY id
    ) sub1
    CROSS JOIN (SELECT @cnt := 0, @id := 0) sub0
) sub2
ORDER BY cnt, id

关于php - mysql 查询 - 如何创建此查询?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32610280/

相关文章:

javascript - PHP & cURL——奇怪的输出

php - 格式化网页以进行打印

php - 这是一个数组、对象还是只是一个看起来像 Json 并从 PHP 输出的字符串?

MySQL:选择每个聚合组中的最后一行

php - 添加http ://if submitted URL doesn't begin with it

PHP/MySQL - 单击按钮时无法获取表中的第一个 ID

javascript - onclick 函数没有响应

mysql - R循环查询数据库中的所有表

mysql - 正则表达式匹配复杂子串

mysql - 使用嵌入qt的mysql?