У меня есть две таблицы:
по умолчанию:
+----+--------+
| id | colour |
+----+--------+
| 1 | red |
| 2 | green |
| 3 | yellow |
+----+--------+
custom:
+--------+--------------+---------+
| linkId | customcolour | ownerId |
+--------+--------------+---------+
| 1 | bright red | 1 |
| 2 | garden green | 2 |
+--------+--------------+---------+
Я хочу вернуть все из таблицы по умолчанию, а затем получить любую связаннуюcustomcolours (через linkId).Я использую запрос:
SELECT a.colour, b.customcolour
FROM default a
LEFT JOIN custom b ON a.id = b.linkId
WHERE (b.ownerId IS NULL OR b.ownerId = 1)
GROUP BY a.id ORDER BY a.colur
Однако, когда я присоединяюсь к пользовательской таблице, он не выберет пользовательский linkId 2, потому что ownerId не равен 1 или NULL.Есть ли способ вернуть строку default.id = 2 и просто установить customercolour как NULL, не добавляя его в таблицу?