Я новичок в MySQL. Я хотел бы скопировать содержимое одной таблицы в другую таблицу в той же базе данных. В принципе, я хотел бы вставить в таблицу из другой таблицы. Есть ли простой способ сделать это?В MySQL, как скопировать содержимое одной таблицы в другую таблицу в одной базе данных?
ответ
INSERT INTO TARGET_TABLE SELECT * FROM SOURCE_TABLE;
EDIT: или если таблицы имеют различные структуры вы также можете:
INSERT INTO TARGET_TABLE (`col1`,`col2`) SELECT `col1`,`col2` FROM SOURCE_TABLE;
EDIT: чтобы ограничить это ..
INSERT INTO TARGET_TABLE (`col1_`,`col2_`) SELECT `col1`,`col2` FROM SOURCE_TABLE WHERE `foo`=1
Если таблица не существует , вы можете создать его с такой же схемой:
CREATE TABLE table2 LIKE table1;
Затем, чтобы скопировать данные по:
INSERT INTO table2 SELECT * FROM table1
+1 для создания LIKE tip :) –
выдающийся! 7 лет программирования, и я никогда не знал об этом !!! –
Я нашел этот код 'SELECT * INTO newTable FROM sourceTable' в [w3school] (http: //www.w3schools.com/sql/sql_select_into.asp), почему он не работает в 'MySQL' –
Если table1 велика, и вы не хотите, чтобы зафиксировать ее на время процесса копирования, вы можете сделать дамп-и-нагрузки вместо того, чтобы:
CREATE TABLE table2 LIKE table1;
SELECT * INTO OUTFILE '/tmp/table1.txt' FROM table1;
LOAD DATA INFILE '/tmp/table1.txt' INTO TABLE table2;
+1 для outfile shenanigans – Martin
Если вы хотите создать и скопировать содержимое в одном кадре, просто используйте SELECT:
CREATE TABLE new_tbl SELECT * FROM orig_tbl;
+1 - хотя новая таблица не будет иметь определения индекса от первого. Подход «create ... like ...» также скопирует определения индекса. – Martin
@FrankHeikens это тоже работает в MySQL? –
Попробуйте это. Хорошо работает в моем Oracle 10g,
CREATE TABLE new_table
AS (SELECT * FROM old_table);
Но вопрос только в MySQL. –
Он дал + для этого, потому что он также работает с MySQL. http://dev.mysql.com/doc/refman/5.7/en/create-table-select.html – Daniel
Это сработало для меня. Вы можете сделать оператор SELECT более сложным, с предложениями WHERE и LIMIT.
Сначала дублируйте свою большую таблицу (без данных), запустите следующий запрос, а затем обрезайте большую таблицу.
INSERT INTO table_small (SELECT * FROM table_large WHERE column = 'value' LIMIT 100)
Супер простой. :-)
Это работает для меня,
CREATE TABLE newtable LIKE oldtable;
Репликация Новая_таблица со старым столом
INSERT newtable SELECT * FROM oldtable
;
Копирует все данные строки в новую таблицу.
Спасибо
- 1. Как скопировать большое количество данных из одной таблицы в другую в одной базе данных?
- 2. Как скопировать данные из одной таблицы в другую в MySQL?
- 3. Как скопировать таблицу из одной базы данных в другую?
- 4. Скопировать данные из одной таблицы в другую
- 5. Как скопировать таблицу быстро из одной базы данных в другую
- 6. sql: как скопировать из одной таблицы в другую таблицу
- 7. Как скопировать ячейку одной электронной таблицы в другую таблицу
- 8. Как скопировать данные из одной таблицы в другую в MySQL?
- 9. Как скопировать строки из одной базы данных MySQL в другую
- 10. C - Скопировать содержимое одной папки в другую
- 11. Скопировать данные из одной таблицы в другую таблицу
- 12. Копирование одной ячейки таблицы в другую таблицу
- 13. Копировать содержимое поля из одной таблицы в другую таблицу - FileMaker
- 14. Как обновить таблицу mysql из одной таблицы в другую?
- 15. Скопируйте данные из одной таблицы в другую таблицу в MYSQL
- 16. Скопируйте содержимое одной таблицы в другую
- 17. LLBLGen: Скопировать таблицу из одной базы данных в другую
- 18. Как скопировать записи из одной таблицы в другую таблицу, ежедневно в mysql phpmyadmin
- 19. Как скопировать содержимое из одной таблицы в другую таблицу с помощью элемента управления fiile (.ctl)
- 20. Mysql Скопируйте сериализованную таблицу из одной базы данных в другую
- 21. Копирование данных таблицы MySQL в другую таблицу
- 22. Скопировать таблицу из одной базы данных в другую базу данных
- 23. Как скопировать строку из одной таблицы в другую
- 24. MySQL эффективно скопировать все записи из одной таблицы в другую
- 25. Как скопировать ввод mysql в другую таблицу?
- 26. Вставка отсортированных значений из одной таблицы MySQL в другую таблицу
- 27. Как скопировать структуру таблицы из одной базы данных в другую?
- 28. Как скопировать все таблицы из одной базы данных в другую
- 29. Как скопировать столбец данных из одной таблицы в другую
- 30. Вставить значения из одной таблицы в другую таблицу в mysql
вау ... это просто –
@JonephO .: Вы должны отметить этот ответ, как принято! ggiroux: Спасибо, это здорово, это действительно просто. – Sk8erPeter
Что произойдет, если кто-то захочет выполнить операции вставки в исходной таблице во время выполнения этого запроса? он блокирует операцию вставки или нет? –