Обновлено в соответствии с рекомендациями Strawberry
Я работаю над базой данных, которая обрабатывает игровые карты и создает представление.
select
kort_info.id,
kk_b.Antall as 'kk_b.Antall',
kk_b.Kjop_id as 'kk_b.Kjop_id',
kk_c.Antall as 'kk_c.Antall',
kk_c.Kjop_id as 'kk_c.Kjop_id'
from kort_info
left join kort_kjopt kk_b on kort_info.id = kk_b.kort_id and kk_b.kort_type like 'b'
left join kort_kjopt kk_c on kort_info.id = kk_c.kort_id and kk_c.kort_type like 'c'
+----------------+--------------+---------------+--------------+---------------+
| Result |
+----------------+--------------+---------------+--------------+---------------+
| id | kk_b.Antall | kk_b.Kjop_id | kk_c.Antall | kk_c.Kjop_id |
+----------------+--------------+---------------+--------------+---------------+
| 5879 | 1 | 23 | 2 | 18 |
| 5902 | 3 | 23 | 4 | 23 |
+----------------+--------------+---------------+--------------+---------------+
| Desired result |
+----------------+--------------+---------------+--------------+---------------+
| id | kk_b.Antall | kk_b.Kjop_id | kk_c.Antall | kk_c.Kjop_id |
+----------------+--------------+---------------+--------------+---------------+
| 5879 | | | 2 | 18 |
| 5879 | 1 | 23 | | |
| 5902 | 3 | 23 | 4 | 23 |
+----------------+--------------+---------------+--------------+---------------+
Моя проблема в том, как ПРИСОЕДИНЯТЬСЯ к одной и той же таблице несколько раз. Моя проблема в том, как JOIN обрабатывает Kort_kjopt.kjop_id. Это значение, которое я не могу контролировать с помощью Kort_info.
У меня есть таблица с информацией о картах. Kort_info.ID используется для идентификации карт.
+--------------+
| Kort_info.ID |
+--------------+
| 5879 |
| 5902 |
+--------------+
Kort_kjopt - это таблица о купленных картах Kort_kjopt.Kort_id подключен к kort_info.ID Kort_kjopt.kort_type определяет, к какому JOIN он подключен к Kort_kjopt .kjop_id - это место, где появляется проблема.
+----------+------------+----------+---------+
| Kort_kjopt |
+----------+------------+----------+---------+
| kort_id | kort_type | Kjop_id | Antall |
+----------+------------+----------+---------+
| 5879 | B | 23 | 1 |
| 5879 | C | 18 | 2 |
| 5902 | B | 23 | 3 |
| 5902 | C | 23 | 4 |
+----------+------------+----------+---------+
kjop_id исключен только в Kort_kjopt и не может быть связан с Kort_info
Мне нужно ограничить, какие значения Kort_kjopt.kjop_id может располагаются в том же ряду. Как мне получить одинаковое значение kk_b.Kjop_id и kk_ c .Kjop_id в строке
Речь идет не о наследовании
card_id 5879 делится на две разные строки