1. 程式人生 > >MySql cmd下的學習筆記 —— 有關多表查詢的操作(多表查詢練習題及union操作)

MySql cmd下的學習筆記 —— 有關多表查詢的操作(多表查詢練習題及union操作)

image ins myisam name sam row div mysq gin

先建立一張 m 表

mysql> create table m (
    -> mid int,
    -> hid int,
    -> gid int,
    -> mres varchar(10),
    -> matime date
    -> )engine myisam charset utf8;
Query OK, 0 rows affected (0.07 sec)


mysql> insert into m
-> values
-> (1, 1, 2, ‘2:0‘, ‘2018-08-03‘),
-> (2, 2, 3, ‘1:2‘, ‘2018-08-03‘),
-> (3, 3, 1, ‘2:5‘, ‘2018-08-04‘),
-> (4, 2, 1, ‘3:2‘, ‘2018-08-05‘);
Query OK, 4 rows affected (0.00 sec)

再建立一個 t 表

mysql> create table t(
    -> tid int,
    -> tname varchar(10)
    -> )engine myisam charset utf8;
Query OK, 0 rows affected (0.07 sec)


mysql> insert into t
-> values
-> (1, ‘甲‘),
-> (2, ‘乙‘),
-> (3, ‘丙‘);
Query OK, 3 rows affected (0.00 sec)
Records: 3 Duplicates: 0 Warnings: 0

技術分享圖片

題目要求:把hidgid中的數字替換成tid中的tname

(一)根據m表和t表左連接,把hid替換成t表的tname

技術分享圖片

(二)把(一)的結果集當成一張表再做一次左連接

      把gid替換成t表的tname

技術分享圖片

或左連接兩張表(用兩次left join)

技術分享圖片

union

查出價格低於100元或價格高於4000元的商品

or

技術分享圖片

或者用union

技術分享圖片

MySql cmd下的學習筆記 —— 有關多表查詢的操作(多表查詢練習題及union操作)