小编Vis*_*seo的帖子

PostgreSQL 通过 GROUP BY 删除重复项

我想打印一个人的最后一条消息,但每个人只应打印他的最新消息。我使用 PostgreSQL 10。

+-----------+----------+--------------+
| name      |   body   |  created_at  |
+-----------+----------+--------------+
| Maria     | Test3    |  2017-07-07  |
| Paul      | Test5    |  2017-06-01  |
+-----------+----------+--------------+
Run Code Online (Sandbox Code Playgroud)

我已经用下面的 SQL 查询尝试过,这给了我确切的结果,但不幸的是,人们在其中加倍了。

+-----------+----------+--------------+
| name      |   body   |  created_at  |
+-----------+----------+--------------+
| Maria     | Test3    |  2017-07-07  |
| Paul      | Test5    |  2017-06-01  |
+-----------+----------+--------------+
Run Code Online (Sandbox Code Playgroud)
+-----------+----------+--------------+
| name      |   body   |  created_at  |
+-----------+----------+--------------+
| Maria     | Test1    |  2016-06-01  |
| Maria     | Test2    |  2016-11-01  |
| Maria     | …
Run Code Online (Sandbox Code Playgroud)

sql postgresql distinct sql-order-by greatest-n-per-group

5
推荐指数
1
解决办法
4369
查看次数