联接与多张表的操作
1 AS的作用
as能把select的查詢結果填入新表
create table profession ( id int(11) not null auto_increment primary key,profession varchar(20) ) as select profession from my_contacts group by profession order by profession;2 列的別名
列名改變了查詢結果中的列名,但并未改變來源列的名稱。別名只是臨時的。
3 表的別名
與列的別名相同,as可以省略
select profession (as) mc_prof from my_contacts (as) mc group by profession order by profession;4 聯接
1 交叉聯接
交叉聯接(cross join)也稱為笛卡爾積、交叉積,返回兩張表的每一行相差的結果
select t.toy,b.boy from toys as t cross join boys as b; /*cross join 可以省略*/2 內聯接
交叉聯接是內聯接的一種。內聯接就是通過查詢中的條件移除了某些結果數據行的交叉連接。
select somecolumns from table1 inner join table2 on somecondition; /*on可以換為where*/根據條件的不同可以分為相等聯接、不等聯接和自然聯接。
/*相等聯接*/ select t.toy,b.boy from toys as t inner join boys as b on b.toy_id=t.toy_id;不等聯接的條件為“<>”
自然聯接是不使用“on”字句的內聯接。只有在聯接的列在兩張表中的名稱都相同時才有用。
總結
- 上一篇: 最火的网络游戏(当前最热门的大型网络端游
- 下一篇: 第六章 统计量及其抽样分布