我有以下SQL:
SELECT * FROM `table` WHERE `code` = 15510642
我想修改它以便它也检查另一个表,例如:
SELECT * FROM `table`,`table2` WHERE `code` = 15510642
然而,这不起作用。请帮忙!
答案 0 :(得分:5)
海报可能意味着UNION
,因为他想要两张桌子的结果?
SELECT * FROM `table` WHERE `code` = 15510642
UNION [ALL]
SELECT * FROM `table2` WHERE `code` = 15510642
仅当两个表包含相同列(或指定它们*
)
答案 1 :(得分:1)
如果他们之间存在关系,你必须加入这些表格。
select * from table as t1, table2 as t2 where t1.code = 15510642 or t2.code=15510642
and t1.id = t2.foreignkeyid
如果没有关系你可以尝试联盟,但字段必须匹配。因此,只使用两个表中匹配的字段。
select id, somefield, somefield2 from table1 where code = 15510642
union
select id, somefield, somefield2 from table2 where code = 15510642
答案 2 :(得分:0)
使用inner join。
这将是
SELECT *
FROM Table t INNER JOIN table2 t2
ON t.Code = t2.Code
WHERE t.Code = 15510642
我希望这有帮助!
Tjeu