T-SQL查詢語句大總結(jié)

2018-06-08 18:16 更新

T-SQL查詢語句大總結(jié)

防偽碼:有志者事竟成,破釜沉舟,百二秦關(guān)終屬楚

案例六:表如下圖所示

 

在數(shù)據(jù)庫中顯示為:

實(shí)驗(yàn)需求:

1、兩個表查詢

select 學(xué)生表.姓名,學(xué)生表1.電話,學(xué)生表1.家庭住址

from 學(xué)生表,學(xué)生表1

where 學(xué)生表.學(xué)生id=學(xué)生表1.學(xué)生id

 

2、三個表的查詢

select 學(xué)生表.姓名,課程表.課程名,成績表.分?jǐn)?shù)

from 學(xué)生表,課程表,成績表

where 學(xué)生表.學(xué)生id=成績表.學(xué)生id AND 成績表.課程ID=課程表.課程ID

 

3、合并兩個結(jié)果集

SELECT 姓名,學(xué)號,班級,國籍

FROM 二班

UNION

select 姓+' '+名,學(xué)號,班級,國籍

from 一班

order by 班級 desc,學(xué)號 asc

 

4、內(nèi)聯(lián)接(查找參加考試的學(xué)生的姓名和CNT成績,電話)

select s.姓名,s.電話,c.CNT

FROM 學(xué)生基本信息表 AS S INNER JOIN 學(xué)生成績表 AS C

ON S.姓名=C.姓名

 

5、左外連接(查找本班學(xué)生的姓名和CNT才成績,電話)

select s.姓名,s.電話,c.CNT

FROM 學(xué)生基本信息表 AS S LEFT OUTER  JOIN 學(xué)生成績表 AS C

ON S.姓名=C.姓名

 

6、右外連接(查找參加本次考試的學(xué)生的姓名和CNT才成績,電話)

select s.姓名,s.電話,c.CNT

FROM 學(xué)生基本信息表 AS S RIGHT OUTER JOIN 學(xué)生成績表 AS C

ON S.姓名=C.姓名

 

7、完全連接(查找所有學(xué)生的考試情況)

select s.姓名,s.電話,c.CNT

FROM 學(xué)生基本信息表 AS S FULL OUTER JOIN 學(xué)生成績表 AS C

ON S.姓名=C.姓名

 

8、自連接(查找每個員工的上司姓名)

SELECT Y.員工姓名,s.員工姓名 AS 上司姓名

from 員工信息表 as y inner join 員工信息表 as s

on y.上司ID=S.員工ID


 

9、子查詢(查找每個季度的生產(chǎn)數(shù)量,百分比)

select 季度,sum(生產(chǎn)數(shù)量) AS 每個季度的生產(chǎn)數(shù)量,

str((sum(生產(chǎn)數(shù)量)/(select sum(生產(chǎn)數(shù)量) from 生產(chǎn)表))*100)+'%' AS 百分比

from 生產(chǎn)表

group by 季度

order by 季度

 

10、在where子句中使用SELECT ,查找課程ID=1并且成績〉80的學(xué)生

select 學(xué)生表.姓名

from 學(xué)生表

where 80<(select 分?jǐn)?shù) from 成績表

where 學(xué)生表.學(xué)生ID=成績表.學(xué)生ID AND 成績表.課程ID=1)

 

11、 交叉連接

SELECT T.教師姓名,c.課程名

from 教員基本信息表 AS t cross join 課程表 AS C





本文出自 “一盞燭光” 博客,請務(wù)必保留此出處http://yw666.blog.51cto.com/11977292/1840977

以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號