我有這些表:MySQL的聲明,JOIN
我不知道我怎麼能寫一份聲明,即需要表「公司」的電子郵件,有Location_id = '1'
和Category_id = '130';
我知道我應該使用JOIN,但我不知道如何從那裏去。
我有這些表:MySQL的聲明,JOIN
我不知道我怎麼能寫一份聲明,即需要表「公司」的電子郵件,有Location_id = '1'
和Category_id = '130';
我知道我應該使用JOIN,但我不知道如何從那裏去。
SELECT Firm.email
FROM Firm
INNER JOIN FirmID ON Firm.firma_id = FirmID.firma_id
WHERE FirmID.location_id = '1'
AND FirmID.Category_id = '130'
非常感謝你!這個對我有用! – Vladson
你可以這樣做:
SELECT f.email
FROM Firm f
WHERE f.firma_id =
(
SELECT ff.firma_id
FROM FirmID ff
WHERE ff.location_id = 1
AND ff.category_id = 130
)
使用一個內部的選擇。
但是,長期來說,使用JOINS會走的路,你有什麼嘗試,什麼不工作?
應執行以下操作簡單:
SELECT email
FROM Firm, FirmID
WHERE Firm.firma_id = FirmID.firma_id
AND FirmID.location_id = 1
AND FirmID.category_id = 130;
它做了一個連接在幕後,但可以更清楚一點比使用JOIN關鍵字理解。
我真的不會建議使用該語法,而不是加入。 –
你能解釋一下爲什麼?我的理解是它比明確使用JOIN關鍵字效率更低,因爲SQL仍然會進行連接。謝謝 – Serenthia
例如:http://stackoverflow.com/questions/1018822/inner-join-on-vs-where-clause –
你需要嘗試一些東西才能發佈問題,這是你生活中可能遇到的最簡單的連接之一 –
我嘗試了一些東西SELECT Firm.email FROM公司INNER JOIN FirmID ON FirmID.location_id ='1'AND FirmID.category_id = '130'; – Vladson