MySQL-এ INSERT INTO ... SELECT কোয়েরিতে অন্য টেবিল থেকে ডেটা কপি করার সময় স্ট্যাটিক (স্থির) মান যোগ করার দুটি পদ্ধতি রয়েছে।
কেস ১: সরাসরি মান লিখুন
INSERT INTO yourSecondTableName(col1, col2, ..., colN) SELECT col1, col2, ..., yourStaticValue FROM yourFirstTableName;
কেস ২: ভেরিয়েবল ব্যবহার করুন
SET @yourVariableName = yourStaticValue; INSERT INTO yourSecondTableName(col1, col2, ..., colN) SELECT col1, col2, ..., @yourVariableName FROM yourFirstTableName;
উদাহরণ
প্রথম টেবিল তৈরি ও ডেটা ইনসার্ট:
mysql> create table First_table (Id int NOT NULL AUTO_INCREMENT, FirstValue int, SecondValue int, PRIMARY KEY(Id)); mysql> insert into First_table(FirstValue,SecondValue) values(10,14); mysql> insert into First_table(FirstValue,SecondValue) values(12,13); mysql> insert into First_table(FirstValue,SecondValue) values(100,110); mysql> insert into First_table(FirstValue,SecondValue) values(45,55);
দ্বিতীয় টেবিল তৈরি করি (৩টি কলাম):
mysql> create table Second_table (Id int NOT NULL AUTO_INCREMENT, Value1 int, Value2 int, Value3 int, PRIMARY KEY(Id));
কেস ১: স্ট্যাটিক মান ৪৫ সরাসরি দিন
mysql> insert into Second_table(Value1,Value2,Value3) SELECT FirstValue, SecondValue, 45 FROM First_table; Query OK, 4 rows affected (0.16 sec)
ফলাফল
+----+--------+--------+--------+ | Id | Value1 | Value2 | Value3 | +----+--------+--------+--------+ | 1 | 10 | 14 | 45 | | 2 | 12 | 13 | 45 | | 3 | 100 | 110 | 45 | | 4 | 45 | 55 | 45 | +----+--------+--------+--------+
কেস ২: ভেরিয়েবল দিয়ে মান ২০ দিন
mysql> set @staticValue = 20; mysql> insert into Second_table(Value1,Value2,Value3) SELECT FirstValue, SecondValue, @staticValue FROM First_table; Query OK, 4 rows affected (0.19 sec)
ফলাফল
+----+--------+--------+--------+ | Id | Value1 | Value2 | Value3 | +----+--------+--------+--------+ | 1 | 10 | 14 | 20 | | 2 | 12 | 13 | 20 | | 3 | 100 | 110 | 20 | | 4 | 45 | 55 | 20 | +----+--------+--------+--------+