Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/61.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 从多个只有id的类似请求更改为只有一个_Mysql_Select - Fatal编程技术网

Mysql 从多个只有id的类似请求更改为只有一个

Mysql 从多个只有id的类似请求更改为只有一个,mysql,select,Mysql,Select,我使用不同的ID多次执行相同的请求: SELECT n.id FROM news n JOIN news_tag nt ON r.id=nt.id_news WHERE nt.id_tag in (Select t.id_tag from news_tag t where t.id_news=2869) ORDER BY r.id DESC LIMIT 2 此请求选择与给定新闻具有相同标签的两条最后新闻 我想知道如何执行相同的请求,但只在一个请求中获得多个ID的结果 你试过IN子句吗

我使用不同的ID多次执行相同的请求:

SELECT n.id 
FROM news n 
JOIN news_tag nt ON r.id=nt.id_news 
WHERE nt.id_tag in (Select t.id_tag from news_tag t where t.id_news=2869) 
ORDER BY r.id DESC 
LIMIT 2
此请求选择与给定新闻具有相同标签的两条最后新闻


我想知道如何执行相同的请求,但只在一个请求中获得多个ID的结果

你试过IN子句吗

如果我没弄错的话,这就行了:

SELECT n.id 
FROM news n 
JOIN news_tag nt ON r.id=nt.id_news 
WHERE nt.id_tag in (Select t.id_tag from news_tag t where t.id_news IN (1,2,3,4,5,6)) 
ORDER BY r.id DESC 
LIMIT 2
其中1、2、3、4等为物品ID

希望这有帮助。

这是一个典型的“每组前N名”查询,在您的情况下,“B”是2


我为每组写了N条记录。

可能我不清楚,但我希望每个新闻返回2条具有相同标签的相关新闻。在你的代码中,它返回了与某个IDS相关的2条最新消息。你的文章似乎非常清晰,与我的问题相对应!ThxCool。由于宝宝哭了,我在这篇文章上有点短,我觉得我没有提供高质量的答案。很高兴你发现这个链接很有用。