Моя задача - создать новую таблицу с несколькими другими таблицами.
Таким образом, диаграмма будет выглядеть следующим образом:
И это запрос таблицы. Каждая таблица имеет одинаковые имена столбцов; id
, name
и address
:
CREATE TABLE internal (
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(10),
address VARCHAR(6)
); -- the other tables have same design.
insert into internal(name, address) values ("Jack", "AZ");
insert into internal(name, address) values ("Nelson", "NY");
insert into internal(name, address) values ("Tom", "NY");
insert into external(name, address) values ("Peter", "London");
insert into external(name, address) values ("John", "London");
insert into terminal(name, address) values ("Lisa", "CA");
insert into terminal(name, address) values ("Anna", "ND");
CREATE TABLE result AS
(SELECT internal.*
FROM internal
LEFT JOIN external
ON internal.id = external.id
LEFT JOIN terminal
ON external.id = terminal.id
);
Проблема в том, что mysql автоматически объединяет все столбцы с одинаковыми именами независимо от того, имеют ли другие таблицы свои собственные данные.
Результат:
ID | NAME | ADDRESS |
1 | Jack | AZ |
2 | Nelson | NY |
3 | Tom | NY |
Я хочу создать свою таблицу следующим образом:
ID | NAME | ADDRESS | ID | NAME | ADDRESS | ID | NAME | ADDRESS |
1 | Jack | AZ | 1 | Peter | London | 1 | Lisa | CA |
2 | Nelson | NY | 2 | John | London | 2 | Anna | ND |
3 | Tom | NY |null| null | null |null| null | null |
Возможно ли это в mySQL?