简单的MYSQL从2个表中选择

时间:2013-04-05 11:06:44

标签: mysql

我有2个mysql表,一个当前表和一个归档表。归档表是当前表的精确副本,包含旧记录。

两个表都包含advert_id列。

我想在两个表中搜索advert_id等于某个值的记录。

如果第一个不存在,则搜索第二个。

我能让它工作的唯一方法是做两个select语句,一个用于第一个表,然后如果找不到记录则从第二个表中选择。我如何一次搜索两个?

3 个答案:

答案 0 :(得分:0)

只是在这里拍摄,但这应该工作。

SELECT * FROM `current` WHERE id = :id
UNION
SELECT * FROM `archived` LEFT JOIN `current` ON archived.id = current.ID
WHERE current.ID IS NULL AND archived.id = :id

答案 1 :(得分:0)

请尝试以下。

select * from Current where advert_id = 222
Union
select * from Archived where advert_id = 333

答案 2 :(得分:0)

试试这个

Select * from Current a , Archive b where a.advert_id = 222 or b.advert_id = 222

这将搜索两个表