MySQL UNION SELECT և IN կետը մեկ հարցման մեջ
Եկեք նախ ստեղծենք աղյուսակ.
mysql> create table DemoTable1
-> (
-> StudentId int,
-> StudentName varchar(20)
-> );
Query OK, 0 rows affected (1.24 sec)
Տեղադրեք որոշ գրառումներ աղյուսակում՝ օգտագործելով insert հրամանը.
mysql> insert into DemoTable1 values(210,'Adam');
Query OK, 1 row affected (0.11 sec)
Ցուցադրել բոլոր գրառումները աղյուսակից՝ օգտագործելով select հայտարարությունը.
mysql> select * from DemoTable1;
Սա կստեղծի հետևյալ արդյունքը.
+-----------+-------------+
| StudentId | StudentName |
+-----------+-------------+
| 210 | Adam |
+-----------+-------------+
1 row in set (0.00 sec)
Ահա երկրորդ աղյուսակը ստեղծելու հարցումը.
mysql> create table DemoTable2
-> (
-> StudentId int,
-> StudentName varchar(20)
-> );
Query OK, 0 rows affected (0.69 sec)
Տեղադրեք որոշ գրառումներ աղյուսակում՝ օգտագործելով insert հրամանը.
mysql> insert into DemoTable2 values(100,'Chris');
Query OK, 1 row affected (0.30 sec)
Ցուցադրել բոլոր գրառումները աղյուսակից՝ օգտագործելով select հայտարարությունը.
mysql> select * from DemoTable2;
Սա կստեղծի հետևյալ արդյունքը.
+-----------+-------------+
| StudentId | StudentName |
+-----------+-------------+
| 100 | Chris |
+-----------+-------------+
1 row in set (0.00 sec)
Ահա MySQL UNION SELECT և IN կետի հարցումը.
mysql> select StudentName from
-> (
-> select StudentId,StudentName from DemoTable1
-> UNION
-> select StudentId,StudentName from DemoTable2
-> ) tbl
-> where StudentId IN(210,100);
Սա կստեղծի հետևյալ արդյունքը.
+-------------+
| StudentName |
+-------------+
| Adam |
| Chris |
+-------------+
2 rows in set (0.00 sec)