如果我的表具有相似的结构(具有相同的列),但信息不同,我可以在与简单的MySQl查询(SELECT * FROM table where Name="Boo";
)相同的输出中检索它的数据吗?
例:
SELECT * FROM Weapon, Armor, Helm, Bomb, Potion where Name="Boo";
RESULT
ID Name Position.X Position.Y Item TableName
23 Boo 3 0 Gun (Weapon)
11 Boo 2 1 Cloth (Armor)
74 Boo 0 4 Tunic (Armor)
119 Boo 7 5 Coif (Helm)
9 Boo 1 6 Crown (Helm)
81 Boo 3 2 Grenade (Bomb)
44 Boo 8 1 Grenade (Bomb)
32 Boo 0 6 Small (Potion)
98 Boo 6 4 Big (Potion)
我有一套带有一组表格的系统(如8),在某些情况下,它们具有完全相同的结构,而在其他情况下,它略有不同(一个或两个不同的列)。
每个表都存储有关用户项目及其存储位置的信息。
我试过了INNER JOIN
,但结果很糟糕。
答案 0 :(得分:1)
如果表Weapon, Armor, Helm, Bomb, Potion
具有完全相同的结构,您可以使用Union
SELECT * FROM Weapon where Name="Boo"
union
SELECT * FROM Armor where Name="Boo"
union
SELECT * FROM Helm where Name="Boo"
union
SELECT * FROM Bomb where Name="Boo"
union
SELECT * FROM Potion where Name="Boo" ;
否则,您可以为每个选择设置正确的列名。 在union子句中,列必须具有相同的类型和相同的数字