我有一张桌子,里面有things
列出的物品ItemID
。给定一个 ItemID,我需要获取具有 ItemID 的记录以及具有相同的所有其他项目name
。
在下面的示例数据中,给定 ItemID 为 1,我需要选择与 ItemID 1 具有相同名称(在本例中为“poptarts”)的所有记录,包括 ItemID 为 1 的记录。
ItemID = 1 name = poptarts
ItemID = 7 name = poptarts
ItemID = 8 name = cheddar
ItemID = 323 name = poptarts
select a.ItemID, a.name from things where a.ItemID = '1'
UNION
select b.ItemID, b.name from things where b.name = a.name
但是,我在上面编写的 SQL 不会将 a.name 传递给第二个选择。有没有办法将名字值传递给第二个选择?我希望语句返回 itemid = 1 作为第一行,7 和 323 作为其他行。