gpt4 book ai didi

mysql - 如何在 MySQL 中使用 join 子句为每个类别选择 1 条最新新闻?

转载 作者:行者123 更新时间:2023-11-29 09:03:23 25 4
gpt4 key购买 nike

我有两张 table 。我想在索引页面上的每个相关类别中显示最后一条新闻。因此我想问“如何在mysql中使用join子句为每个类别选择1条最新新闻?”:

类别表:

id|category_name|
--+-------------+
1 | Sport |
2 | Policy |
3 | Hot News |

all_news_table:

id | category_id | title
---+-------------+---------------
1 |3 | addsad
2 |2 | asdad
3 |1 | sdadasdasd
3 |2 | sdadasdasd
4 |1 | dsasdas
5 |3 | asdasdasd
6 |3 | sdasdas

最佳答案

假设较高的 id 表示“较新”的新闻项目。

首先在子选择中选择每个新闻类别的最高 ID,然后选择这些新闻项的所有数据。

SELECT c.category_name, a.title, a.body
FROM all_news_table a
INNER JOIN category_table c ON (a.category_id = c.id)
WHERE a.id IN (
SELECT max(a1.id) FROM all_news_table a1
GROUP BY a1.category_id)

关于mysql - 如何在 MySQL 中使用 join 子句为每个类别选择 1 条最新新闻?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7872130/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com