我有五个要从表中检索的结果,我想编写一个存储过程,该过程将返回所有所需的行。
我可以临时写这样的查询:
Select * from Table where Id = 1 OR Id = 2 or Id = 3
我以为我需要接收要拆分的
Id
列表,但是如何编写WHERE
子句? 最佳答案
因此,如果您只是想学习SQL,那么这是了解IN
运算符的简短示例。以下查询与您尝试的结果相同。
SELECT *
FROM TABLE
WHERE ID IN (SELECT ID FROM TALBE2)
这转化为您的尝试。从您的尝试来看,这可能是您理解的最简单的版本。虽然,将来我会建议使用
JOIN
。JOIN
具有与先前代码相同的功能,但将是更好的选择。如果您想了解有关JOINs
的更多信息,请参见以下来自最重要来源的链接Joins - wikipedia
and also a visual representation of how different types of JOIN work