mysql объединить две таблицы в одну

Статус
В этой теме нельзя размещать новые ответы.
Сообщения
673
Реакции
242
Помог
11 раз(а)
Добрый день имеется два таблицы
1 таблица:
20278
и вторая таблица
20279

Как объединить эти таблицу в одну так чтобы было следующим образом без патерь данных:
20280

Как видно из таблиц у обеих есть Статичный идентификатор "id" and "Login"

ручками этого делать уж как морокно с +1000 уникальными данными)))
 
В этой теме было размещено решение! Перейти к решению.
Сообщения
207
Реакции
420
Помог
10 раз(а)
Сначала добавляете нужные колонки в первую таблицу (ручками, да), потом:
SQL:
REPLACE INTO
  `ТАБЛИЦА ОДИН`
(`id`, `setting_1`, `setting_2`, `setting_3`, `setting_4`, `setting_5`, `setting_6`, `setting_7`, `setting_8`, `setting_9`, `setting_10`)
SELECT
  `id`, `setting_1`, `setting_2`, `setting_3`, `setting_4`, `setting_5`, `setting_6`, `setting_7`, `setting_8`, `setting_9`, `setting_10`
FROM
  `ТАБЛИЦА ДВА`;
P.S.: Структура ужасная, конечно. Когда понадобится ещё одна настройка - добавите колонку setting_11? :rofl:
Сделайте по нормальному, и не позорьтесь.
 
Сообщения
673
Реакции
242
Помог
11 раз(а)
CrazyHackGUT, что-то менять уже поздно)) так как запросы работают через mysql_read_result2("Login", g_sLogin[id], charsmax(g_sLogin)); через метамод MySQL Threads

спасибо!!
 
Сообщения
673
Реакции
242
Помог
11 раз(а)
fl0wer, чего ужасного-то? в структуре БД?, в бд толку то не лезу, так что для меня имена таблиц не принципиально
 
Сообщения
1,701
Реакции
1,512
Помог
26 раз(а)
Limbooc, просто поворчать решил.
 
Сообщения
673
Реакции
242
Помог
11 раз(а)
Последнее редактирование:
Сообщения
207
Реакции
420
Помог
10 раз(а)
Из Таблицы 1 пропадает данные такие как Password,Email,Auth
Запрос не прокатил, типа? Тогда можно заджоинить и получить фулл набор данных.
Код:
REPLACE INTO
  `ТАБЛИЦА ОДИН`
(`id`, `Login`, `Password`, `Email`, `Auth`, `setting_1`, `setting_2`, `setting_3`, `setting_4`, `setting_5`, `setting_6`, `setting_7`, `setting_8`, `setting_9`, `setting_10`)
SELECT
  `ТАБЛИЦА ДВА`.`id`, `ТАБЛИЦА ОДИН`.`Login`, `ТАБЛИЦА ОДИН`.`Password`, `ТАБЛИЦА ОДИН`.`Email`, `ТАБЛИЦА ОДИН`.`Auth`, `ТАБЛИЦА ДВА`.`setting_1`, `ТАБЛИЦА ДВА`.`setting_2`, `ТАБЛИЦА ДВА`.`setting_3`, `ТАБЛИЦА ДВА`.`setting_4`, `ТАБЛИЦА ДВА`.`setting_5`, `ТАБЛИЦА ДВА`.`setting_6`, `ТАБЛИЦА ДВА`.`setting_7`, `ТАБЛИЦА ДВА`.`setting_8`, `ТАБЛИЦА ДВА`.`setting_9`, `ТАБЛИЦА ДВА`.`setting_10`
FROM
  `ТАБЛИЦА ДВА`
  INNER JOIN `ТАБЛИЦА ОДИН`
    ON `ТАБЛИЦА ОДИН`.`id` = `ТАБЛИЦА ДВА`.`id`;
Такое-то должно прокатить.
 
  • Нравится
Реакции: Ayk
Сообщения
673
Реакции
242
Помог
11 раз(а)
CrazyHackGUT, получилось, но таблица обьеденненая таблица создалась повторно тоесть изначально было 380 ID, теперь их 760
 
Сообщения
207
Реакции
420
Помог
10 раз(а)
Если я правильно понял, суть проблемы в автоинкременте. Он не был сброшен.
К сожалению, сразу давать верные запросы, не имея хотя бы дампа с тестовыми данными, версии MySQL сервера и конфигурации, - довольно проблематично.

Вообще, ничего страшного быть не должно.
 
Сообщения
673
Реакции
242
Помог
11 раз(а)
CrazyHackGUT, могу ли я предоставить 2 таблицы в лс?
 
Сообщения
207
Реакции
420
Помог
10 раз(а)
Показывайте.
 
Сообщения
673
Реакции
242
Помог
11 раз(а)
CrazyHackGUT, спасибо ваш последний метод сработал, я просто сбросил автоинкремент
 
Статус
В этой теме нельзя размещать новые ответы.

Пользователи, просматривающие эту тему

Сейчас на форуме нет ни одного пользователя.
Сверху Снизу