我有一张名为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传递给第二个select。有没有办法将第一个name值传递给第二个select?我希望语句返回itemid = 1作为第一行,然后是7和323。