說我有一個表,它有ID和品牌列。MySQL匹配品牌的品牌,你不知道品牌的?
說我有一個項目,我知道ID是300,但這就是我所知道的。有沒有辦法讓查詢拉出與品牌相同品牌的所有商品,還是必須將其分解爲2個查詢並首先選擇商品300的品牌?
謝謝。
說我有一個表,它有ID和品牌列。MySQL匹配品牌的品牌,你不知道品牌的?
說我有一個項目,我知道ID是300,但這就是我所知道的。有沒有辦法讓查詢拉出與品牌相同品牌的所有商品,還是必須將其分解爲2個查詢並首先選擇商品300的品牌?
謝謝。
如果我正確地理解了你,使用子選擇可能是解決這個問題最簡單的方法。
SELECT * FROM mytable WHERE brand = (SELECT brand FROM mytable WHERE id = 300);
我想我會用你的答案,儘管我認爲埃裏克的答案更酷,我認爲你的答案稍後會更容易回頭看,並理解它在做什麼。 – 2009-06-23 15:30:42
select id
from item
where brand = (select brand from item where id = 300)
你可以加入表本身:
select
a.*
from
brands a
inner join brands b on
a.brand = b.brand
where
b.id = 300
作爲hangy的兩個工作,我不知道哪一個表演......我會想你的方式,因爲沒有子查詢? – 2009-06-23 15:24:28
select * from products where category in (select category from products where Id = 300)
您可能要多一點具體談談您的模式 - 不表(ID,品牌)定義一個項目,使得它是一個項目表? ID是品牌的ID嗎? – 2009-06-23 15:20:08