Что вы подразумеваете под слиянием двух таблиц? Вам нужны записи и столбцы из таблиц или столбцов из одного и записи из обоих? В любом случае вам нужно будет изменить предложение соединения.
Вы могли бы сделать присоединиться к столбцам вы хотите
SELECT DISTINCT *
FROM table1 tb1
JOIN table2 tb2
ON table1.id = table2.id
Теперь, если вы хотите столбцы только table1 сделать LEFT JOIN Если вы хотите столбцы только TABLE2 то RIGHT JOIN Если вы хотите столбцы из обеих таблиц, используйте запрос как есть. DISTINCT гарантирует, что вы получите только одну строку, если есть несколько строк с одинаковыми данными (но этот отчет будет проверять значения для всех столбцов в строке, независимо от того, являются они разными или одинаковыми) Союз не поможет, если обе таблицы имеют разное количество столбцов. Если вы не знаете, о присоединяется затем использовать декартово произведение
select distinct *
from table1 tb1, table2 tb2
where tb1.id = tb2.id
Где идентификатор столбца, который является общим между таблицами. Вот если вы хотите столбцы только table1 сделать
select distinct tb1.*
Аналогичным образом замените ТВ1 на ТВ2 в вышеупомянутом заявлении, если вы просто хотите TABLE2 столбцов.
select distinct tb2.*
Если вы хотите смещ_по_столбцам от обоих просто написать «*»
В обоих случаях И.Э. соединения и продукты, упомянутые выше, если вам нужны выборочные столбцы, просто напишите псевдоним таблицы. Например. Рассмотрим: table1 имеет идентификатор, Foo, бар в виде столбцов table2 имеет идентификатор, имя, раскатать нет, возраст
вы хотите только идентификатор, Foo, имя из обеих таблиц в выберите результат запроса сделать это:
select distinct tb1.id, tb1.foo, tb2.name
from table1 tb1
join table2 tb2
on tb1.id=tb2.id
То же относится и к декартовому запросу продукта. tb1, tb2 называются BTW в качестве псевдонимов таблицы.
Если вы хотите данные из обеих таблиц, даже если они не имеют ничего общего просто сделать
select distinct *
from table1 , table2
Обратите внимание, что это не может быть достигнуто с помощью объединения, как присоединиться требует общего столбца, чтобы присоединиться к «на»
Есть ли у них такая же структура? Если это так, используйте 'UNION'. –
@ PM77-1 Нет, у кого есть 4 столбца, а остальные 12 – angs
. Что именно вы подразумеваете под «* merge *»? Просьба представить некоторые примеры данных и желаемый результат. –