MySQL

MySQL: Как скопировать данные с одной таблицы в другую

Копирование полностью всех данных из одной таблицы mysql в другую:

INSERT INTO `db`.`table_to`
SELECT *
FROM `db`.`table_from` ;

Если необходимо скопировать только некоторые столбцы, то применяем следующую конструкцию:

INSERT INTO `db`.`table_to` (`a1_2`, `a2_2`, `a3_2`, `a4_2`)
SELECT `a1`, `a2`, `a3`, `a4`
FROM `db`.`table_from` ;

Для копирования данных из одной таблицы MySQL в другую по условию:

INSERT INTO `db`.`table_to` (`a1_2`, `a2_2`, `a3_2`, `a4_2`)
SELECT `a1`, `a2`, `a3`, `a4`
FROM `db`.`table_from`
WHERE  `a2` < '2014-04-30 11:37:38';

db — имя базы.
table_to — таблица куда копируем.
table_from — таблица откуда копируем.

Насколько полезным был этот пост?

Нажмите на звезду, чтобы оценить!

Средний рейтинг 4.5 / 5. Голосов: 42

Пока оценок нет! Будьте первым, поставь свою оценку этому посту.

Мы сожалеем, что этот пост не был полезен для вас!

Давайте улучшим этот пост!

Расскажите, как мы можем улучшить этот пост?

12 Комментарии

  1. Спасибо Но много пришлось ручками набирать, Все поля перечислял —-а нет такой автомат. функции в самом phpMyAdmin ?

  2. Александр.
    У меня задача, как-то пометить эту запись. Например добавить в поле a5_2 число 5. В select его нет? Куда вставить эти 5.
    INSERT INTO `db`.`table_to` (`a1_2`, `a2_2`, `a3_2`, `a4_2`, `a5_2`)
    SELECT `a1`, `a2`, `a3`, `a4`
    FROM `db`.`table_from` ;

    1. Вроде так можно:

      INSERT INTO `db`.`table_to` (`a1_2`, `a2_2`, `a3_2`, `a4_2`, `a5_2`)
      SELECT `a1`, `a2`, `a3`, `a4`, REPLACE(`a4`, `a4`, ‘5’)
      FROM `db`.`table_from` ;

    2. То есть так:

      INSERT INTO `db`.`table_to` (`a1_2`, `a2_2`, `a3_2`, `a4_2`, `a5_2`)
      SELECT `a1`, `a2`, `a3`, `a4`, REPLACE(`a5`, `a5`, ‘5’)
      FROM `db`.`table_from` ;

  3. Недовольные, какого хрена вы здесь делаете? Если вы не знаете, куда это вставлять, то начинайте читать учебник по MySQL с главы 1. Тут вам пока что рано читать

  4. Что бы тебе жилось долго, и люди рождаясь понимамали, куда вставлять это всё, что ты тут вымочил!

      1. приветствую. не подскажете в какую часть кода, это вставлять? Где надо писать то, что написали Вы?

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.

Back to top button