MySQL-এ INSERT INTO ... SELECT সিনট্যাক্স দিয়ে এক টেবিল থেকে নির্দিষ্ট শর্তমতো ডেটা বের করে অন্য টেবিলে ইনসার্ট করা যায়। এখানে VALUES ক্লজ ব্যবহার করা হয় না।
সিনট্যাক্স
INSERT INTO `target_table` (`col1`, `col2`, ...)
SELECT `col1`, `col2`, ... FROM `source_table` WHERE `condition`;
উদাহরণ
CREATE TABLE `CombiningInsertValuesSelect` (
`EmployeeId` VARCHAR(10), `EmployeeName` VARCHAR(100), `EmployeeAge` INT
);
CREATE TABLE `getAllValues` (
`Id` VARCHAR(100), `Name` VARCHAR(100), `Age` INT
);
INSERT INTO `getAllValues` VALUES
('EMP-1','John',26), ('EMP-2','Carol',22), ('EMP-3','Sam',24),
('EMP-4','David',27), ('EMP-5','Bob',21);
শর্তসাপেক্ষে কপি (শুধু EMP-4)
INSERT INTO `CombiningInsertValuesSelect` (`EmployeeId`, `EmployeeName`, `EmployeeAge`)
SELECT `Id`, `Name`, `Age` FROM `getAllValues` WHERE `Id` = 'EMP-4';
ফলাফল: Target টেবিলে ১টি রো (EMP-4, David, 27) ইনসার্ট হয়।
ব্যবহার ক্ষেত্র: আর্কাইভিং, রিপোর্টিং টেবিল পূরণ, ETL প্রসেসিং।