小编one*_*All的帖子

MySQL:一起使用 DISTINCT 和 GROUP BY?

我看到以下同时使用 DISTINCT 和 GROUP BY 的 MySQL 查询:

SELECT  DISTINCT user_id, post_id, post_content
    FROM  some_table
    GROUP BY  post_id, user_id
    HAVING  post_content LIKE '%abc%';
Run Code Online (Sandbox Code Playgroud)

这是一个与查询一起使用的场景:每个用户都有一个唯一的 id,user_id,并且可以发表多个由唯一 id 标识的帖子post_id。每个帖子都会包含一些文本。

我发现这令人困惑(来自 Oracle DB 之后)并有以下问题:

  1. 使用GROUP BY而不做任何聚合是什么意思?
  2. SELECTvs in中切换列的顺序有什么意义GROUP BY
  3. 从 省略第三列是什么意思GROUP BY
  4. 为什么DISTINCT与 一起使用GROUP BY?在对最终结果或之前完成所有分组之后,是否运行不同的操作?

mysql oracle aggregate group-by distinct

5
推荐指数
2
解决办法
2511
查看次数

标签 统计

aggregate ×1

distinct ×1

group-by ×1

mysql ×1

oracle ×1