使用ORDER BY显示来自两个不同表的两个不同列。

为此,您可以将UNION与ORDER BY子句一起使用。让我们首先创建一个表-

mysql> create table DemoTable1
(
   Amount int
);

使用插入命令在表中插入一些记录-

mysql> insert into DemoTable1 values(234);
mysql> insert into DemoTable1 values(567);
mysql> insert into DemoTable1 values(134);

使用select语句显示表中的所有记录-

mysql> select *from DemoTable1;

这将产生以下输出-

+--------+
| Amount |
+--------+
|    234 |
|    567 |
|    134 |
+--------+
3 rows in set (0.00 sec)

这是创建第二个表的查询-

mysql> create table DemoTable2
(
   Price int
);

使用插入命令在表中插入一些记录-

mysql> insert into DemoTable2 values(134);
mysql> insert into DemoTable2 values(775);
mysql> insert into DemoTable2 values(121);
mysql> insert into DemoTable2 values(882);

使用select语句显示表中的所有记录-

mysql> select *from DemoTable2;

这将产生以下输出-

+-------+
| Price |
+-------+
|   134 |
|   775 |
|   121 |
|   882 |
+-------+
4 rows in set (0.00 sec)

以下是使用ORDER BY显示来自两个不同表的两个不同列的查询-

mysql> select distinct Amount from DemoTable1
   UNION
   select distinct Price from DemoTable2
   order by Amount;

这将产生以下输出-

+--------+
| Amount |
+--------+
|    121 |
|    134 |
|    234 |
|    567 |
|    775 |
|    882 |
+--------+
6 rows in set (0.00 sec)