MySQL查询:从两列在同一领域选择
我有以下MySQL表:MySQL查询:从两列在同一领域选择
产品
ID -- NAME -- INSTOCK -- REFERER -- DISCOUNT
1 -- pen -- 1 -- google.com -- 50
2 -- mouse -- 0 -- google.ca -- 30
3 -- keyboard -- 1 -- google.ca -- 30
4 -- screen -- 1 -- yahoo.com -- 50
5 -- mother board -- 1 -- yahoo.ca -- 30
6 -- printer -- 1 -- google.com --30
我试图让所有具有行是:
INSTOCK等于1,REFERER等于google.com和google.ca
我该怎么做?
非常感谢
这是非常基本的SQL:
SELECT ID, NAME
FROM Products
WHERE INSTOCK = 1 AND (REFERER = 'google.com' OR REFERER = 'google.ca');
更多参考:
是的,这是一个学习者。谢谢! – user523129 2011-03-09 15:45:35
使用WHERE语句与您的查询,条件相结合:
// Example
SELECT ID, NAME FROM table WHERE INSTOCK = 1 AND (REFERER = 'google.com' OR REFERER = 'google.ca');
谢谢Artusamak,但用您的查询我得到0结果,并且这是不正确的:( – user523129 2011-03-09 15:38:26
你的预期结果是什么? – Belinda 2011-03-09 15:40:45
尝试用OR代替;;) – Artusamak 2011-03-09 15:41:32
我敢打赌,你的意思是OR,而不是在你的问题:
您寻找:
SELECT * FROm table WHERE INSTOCK = 1 AND REFERER IN ('google.com', 'google.ca')
或者你可以使用OR:
SELECT * FROM table WHERE INSTOCK = 1 AND (REFERER = 'google.com' OR REFERER = 'google.ca')
使用'IN()'的+1 – Sonny 2011-03-09 15:55:44
只是为了确保你想选择亲库存管道和推荐人是google.com还是google.ca?对于你的例子,你想要返回1,2,3和6吗? – Belinda 2011-03-09 15:30:45
这似乎是不可能的。你希望从这个查询中得到什么样的ID? – anothershrubery 2011-03-09 15:33:48
我们可能是指google.com **或** google.ca ... – 2011-03-09 15:41:54