Вот проблема у меня есть:
MySQL: часть таблицы-A присоединиться часть таблицы-B
Table A id_a | name --------------------- 1 | name-A 2 | name-B 3 | name-C 4 | name-D 5 | name-E 6 | spcial_type
Table B id_b | id_a | condition | subtype ------------------------------------------------- 1 | 2 | 1 | 1 2 | 1 | 0 | 1 3 | 1 | 1 | 2 4 | 2 | 0 | 1 5 | 4 | 0 | 1 6 | 5 | 1 | 1 7 | 2 | 1 | 3
Условия:
Таблица A: «special_type» exluded
Таблица A: строки нет в таблице B, включенных
Таблица B: все с условием = 0 exluded
Result Table: id_r | id_a | id_b | name | condition ----------------------------------------------- 1 | 1 | 3 | name-A | 1 2 | 2 | 1 | name-B | 1 3 | 5 | 6 | name-E | 1 4 | 2 | 7 | name-B | 1 5 | 3 | null | name-C | null
Таблица A.subtype - только aux. чтобы показать, что id_a можно хранить много раз с условием = 1
Что я пробовал:
select x.id_a, x.name, z.id_b, z.id_a, z.condition from Table A LEFT JOIN Table z ON x. id_a = z. id_a
, но это заставило меня элементы с условием = 0, что я не хочу
поэтому я попытался :
select x.id_a, x.name, z.id_b, z.id_a, z.condition from Table A LEFT JOIN Table z ON x. id_a = z. id_a where z.condition=1
но эта идея исключает элементы из таблицы A, отсутствующие в таблице B, и я хочу эти предметы.
Может ли это быть внутри MySQL, или мне нужен скриптовый язык. разобраться?
Мысли кто-нибудь?
Это не для меня ясно, что ваш ожидаемый результат, и запросы несовместимы с описанными таблицами. –
Они (q v. T) выглядят нормально ко мне .. и после смены .. отлично работают – Jeffz