Я пытаюсь получить данные из двух связанных таблиц в одном запросе. Таблицы выглядеть следующим образом:Как получить данные из двух связанных таблиц?
Таблица 1:
--------------------------
| ID | username |
--------------------------
| 1 | user1 |
| 2 | user2 |
| 3 | user3 |
| 4 | user4 |
--------------------------
Таблица 2:
----------------------------------------------------
| ID | user_id | key | value |
----------------------------------------------------
| 1 | 1 | key1 | value1 |
| 2 | 1 | key2 | value2 |
| 3 | 2 | key2 | value3 |
| 4 | 3 | key3 | value4 |
| 5 | 4 | key1 | value5 |
| 6 | 4 | key3 | value5 |
----------------------------------------------------
Я хочу, чтобы получить результат, включая все строки из таблицы 1 и ключ-значение пары из таблицы 2 где key = key1. Если ключ отсутствует в таблице 1 для данной строки из таблицы 1, заполните его NULL. Ожидаемый результат Пример:
----------------------------------------------------
| user_id | username | key | value |
----------------------------------------------------
| 1 | user1 | key1 | value1 |
| 2 | user2 | NULL | NULL |
| 3 | user3 | NULL | NULL |
| 4 | user4 | key1 | value5 |
----------------------------------------------------
В качестве альтернативы - все строки из таблицы 1, которые не содержат пары ключ-значение для ключа = key1 в таблице 2.
я попробовал стандартный SELECT
от 2-х таблиц и SELECT
из Таблица 1 с JOIN
из таблицы 2, но все, что я получаю, это все строки из таблицы 1, содержащие пару «ключ-значение» с ключом = ключ1 в таблице 2, и это точно противоположно тому, что я хочу.
Любые предложения?
он искал образец, который разрешен только определенный ключ = «key1», и в качестве альтернативы, как получить INVERSE (только те, которые Бесполезный «т). Вы видели мой ответ ... – DRapp
О, я вижу. Благодарю. –