Нам часто приходится вставлять данные из одной таблицы в другую таблицу. Иногда нам нужно указать поля импорта. Настройки необходимы только для импорта записей, которых нет в целевой таблице. Хотя они могут быть реализованы путем разделения их в программе на простой SQL, использование одного SQL может сэкономить много кода. Далее я беру базу данных MySQL в качестве примера, чтобы проиллюстрировать ситуацию один за другим:
1. Если поля двух таблиц идентичны и вы хотите вставить все данные, вы можете использовать этот метод: ВСТАВИТЬ В целевую таблицу ВЫБЕРИТЕ * ИЗ исходной таблицы;
insert into insertTest select * from insertTest2;
2. Если вы хотите импортировать только указанные поля, вы можете использовать этот метод:
ВСТАВИТЬ В Целевую таблицу (Поле 1, Поле 2,…) ВЫБЕРИТЕ Поле 1, Поле 2,… ИЗ исходной таблицы; (Поля там должны быть согласованными) вставьте в тест вставки 2(идентификатор) выберите идентификатор из теста вставки 2; 3. Если вам нужно импортировать только записи, которых нет в целевой таблице, вы можете использовать этот метод:
Скопируйте код ВСТАВКИ В целевую таблицу (Поля 1, 2,…) ВЫБЕРИТЕ Поле 1, Поле 2,… ИЗ исходной таблицы, ГДЕ не существует (выберите * из целевой таблицы) Где целевая таблица. Сравните таблицу. Поле сравнения; Скопируйте код 1>. Вставка нескольких записей:
Скопируйте код вставки в тест вставки 2 (идентификатор,имя) выберите идентификатор,имя из теста вставки, где его нет (выберите * из теста вставки 2 where.id); Скопируйте код 2>. Вставить запись:
Скопируйте код вставки в тест вставки (идентификатор, имя) ВЫБЕРИТЕ 100, “людехуа” ИЗ dual, ГДЕ его нет (выберите * из теста вставки, где); Скопируйте код
ВЫБИРАТЬ
t.NAME, ( CASE t.sex WHEN 1 THEN 'male' WHEN 2 THEN 'female' ELSE 'Unknown' END ) Gender
ОТ
Автор: Роулинг Источник: CAD Оригинал: https://blog.csdn.net/rocling… Заявление об авторских правах: Эта статья является оригинальной статьей блогера. Пожалуйста, прикрепите ссылку на статью в блоге для печати.