私は少し前から疑念があります... SQL結合のエントリをフィルタリングする最良の方法は....です。 WHERE句または結合のON?JOIN(SQL)の結果をフィルタリングする最善の方法は
たとえば、何が良いですか?このスニペットは、WHERE
SELECT
customer.users_id AS CustID,
FROM customer
LEFT JOIN visit ON customer.users_id = visit.CustID
WHERE visit.active = 1
またはこの他の方法(ONにそのフィルタ)を使用して:
SELECT
customer.users_id AS CustID,
FROM customer
LEFT JOIN visit ON (customer.users_id = visit.CustID AND visit.active=1)
ありがとうございました。
最初の応答が優れています。 – kingtut007
私の勇気は、2人があなたに同じ答えを与えない状況があることを私に伝えています(私は頭の上から1頭も考えられませんが)。それにかかわらず、このような状況では同じ答えを与えるべきであり、第2のものはより効率的であるべきです。しかし、SQLインタプリタはかなりスマートなので、文が同じ時間で実行されると仮定します。したがって、それはスタイルになります。一般的に、where句はJOIN内の両方のテーブルに影響しないため、スタイルが優れています。 – BrandonM