0

テーブル:USERSDATA. すべてuserの fromUSERSには、1 つまたは複数のrowsonを指定できますDATAが、任意の from を指定することもできます。

対応のないusersものも選択したいのですが、以下のクエリでは省略しています。どのように変更すればよいですか?USERSDATA

SELECT USERS.id,
       USERS.email,
       USERS.active,
       USERS.last_alert,
       DATA.active,
       DATA.active_from
FROM USERS
JOIN DATA
WHERE DATA.id_user = USERS.id
    AND DATA.active = 1
ORDER BY USERS.id ASC

DATA.id_userが含まれていUSERS.idます。

4

3 に答える 3

3

INNER JOIN の代わりに LEFT JOIN を使用する必要があります。

SELECT
    USERS.id,
    USERS.email,
    USERS.active,
    USERS.last_alert,
    DATA.active,
    DATA.active_from
FROM USERS
    LEFT JOIN DATA ON (
        DATA.id_user = USERS.id AND DATA.active = 1
    )
ORDER BY USERS.id ASC
于 2013-09-26T13:27:25.930 に答える
0

外部結合を行う

SELECT USERS.id,
       USERS.email,
       USERS.active,
       USERS.last_alert,
       DATA.active,
       DATA.active_from
FROM DATA
LEFT OUTER JOIN USERS
WHERE DATA.id_user = USERS.id
    AND DATA.active = 1
ORDER BY USERS.id ASC
于 2013-09-26T13:25:24.440 に答える
0

LEFT JOINこれらの行を含めるように書き換えますが、使用できない値は次のようになりNULLます

SELECT USERS.id,
       USERS.email,
       USERS.active,
       USERS.last_alert,
       DATA.active,
       DATA.active_from
FROM USERS
LEFT JOIN DATA ON USERS.id = DATA.id_user AND DATA.active = 1
ORDER BY USERS.id ASC
于 2013-09-26T13:26:04.570 に答える