我正在寻找一种方法从另一个表上的查询结果中搜索表值:
SELECT entry_id FROM FEEDENTRYSTATUSES WHERE starred > 0 ;
+----------+
| entry_id |
+----------+
| 1036 |
| 1059 |
+----------+
2 rows in set (0.00 sec)
SELECT url from FEEDENTRIES WHERE id = 1036 ;
+---------------------+
| url |
+---------------------+
| https://google.com/ |
+---------------------+
1 row in set (0.00 sec)
所以我可以从FEEDENTRYSTATUSES表中获取ID列表。 我可以通过赋值 1036 手动从第二个表中检索值。 但是我想从第一个SELECT返回的值中搜索表FEEDENTRIES。
这是一种方法吗? 任何帮助非常感谢。 非常感谢
答案 0 :(得分:0)
您可以使用IN
运算符和子查询来实现:
SELECT url from FEEDENTRIES
WHERE id IN (SELECT entry_id FROM FEEDENTRYSTATUSES WHERE starred > 0);
或者加入表格并过滤所需的数据:
SELECT fe.url from FEEDENTRIES fe
INNER JOIN FEEDENTRYSTATUSES fes ON fe.id = fes.entry_id
WHERE fes.starred > 0;