在多个表上选择

时间:2011-06-16 11:25:20

标签: mysql sql select

我有两个包含完全独立信息的表:

table: tires
columns:
Tire_id
name
model
etc 
etc

table: product
columns: 
product_id
name 
model 
etc
etc

我想同时在两个表上运行搜索,在名称和/或模型中查找关键字

它应该从两个数据库返回产品/轮胎,ID不是唯一的,并且可能存在于两个表中,是单独的产品。因此,在网站的其他部分,我使用了领先的T或P来保持它们在网站的编码中分开。

我正努力让搜索同时在两者上工作。

我在想这样的事情:

SELECT * FROM product OR tire WHERE name = 'keyword' OR model = 'keyword'

2 个答案:

答案 0 :(得分:1)

你需要一个工会:

select 'product' as type, product_id as id, name, model
from product
where ...
union all
select 'tire' as type, tire_id as id, name, model
from tire
where ...

答案 1 :(得分:0)

这个家伙

SELECT p.*,t.fieldname FROM product as p,tire as t WHERE t.name = 'keyword' OR t.model = 'keyword' or p.name = 'keyword' OR p.model = 'keyword'