我有两个表产品和规格。在产品表中,它有像PhoneMake和PhoneModel和ProducId这样的列,而在规格中有像Os_name,Dapps,Os_ram,ProductId这样的列。我的问题是如何从所有这些中选择多个列值。 像
select *
from product
where true
AND PhoneMake ='Motorola'
AND PhoneMake ='Nokia '
AND specs.Os_name ='on'
AND specs.Os_name ='on'
AND specs.Dapps ='on'
AND specs.Os_ram =512
AND specs.Os_ram =1
什么是正确的mysql查询?
答案 0 :(得分:0)
你必须了解联接:
select * from product join specs on <condition>
where PhoneMake in ('Motorola','Nokia') AND specs.Os_name ='on' AND specs.Dapps ='on'AND specs.Os_ram IN(512,1)
这是与表的简单连接。 <conditon>
必须更改为specs
和product
之间的外键关系。
答案 1 :(得分:0)
SELECT *
FROM product
INNER
JOIN specs
ON <condition>
WHERE PhoneMake IN ('Motorola', 'Nokia ')
AND Os_name ='on'
AND Dapps ='on'
AND Os_ram IN (512, 1);