国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

[SQL Server]數(shù)據(jù)庫入門之多表查詢

這篇具有很好參考價值的文章主要介紹了[SQL Server]數(shù)據(jù)庫入門之多表查詢。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

?? 博客主頁:博主鏈接
?? 本文由 M malloc 原創(chuàng),首發(fā)于 CSDN??
?? 學(xué)習(xí)專欄推薦:LeetCode刷題集!
?? 歡迎點贊 ?? 收藏 ?留言 ?? 如有錯誤敬請指正!
?? 未來很長,值得我們?nèi)Ρ几案篮玫纳?
------------------??分割線??-------------------------
————————————————

[SQL Server]數(shù)據(jù)庫入門之多表查詢
[SQL Server]數(shù)據(jù)庫入門之多表查詢

??SQL_Server的前情介紹

??大家好呀,今天是我第三次寫sql_server,也是最近才學(xué)習(xí)sql_server,也想著記錄一下自己的學(xué)習(xí)過程,并且分享給大家尼!

?? 一、sql_server技術(shù)介紹

SQL Server 是由微軟公司(Microsoft)開發(fā)的關(guān)系型數(shù)(RDBMS)。RDBMS 是 SQL 以及所有現(xiàn)代數(shù)據(jù)庫系統(tǒng)的基礎(chǔ),比如 MS SQL Server,IBM DB2,Oracle,MySQL 以及微軟的 Microsoft Access。

??二、學(xué)習(xí)前的準備工作

編程軟件:SQL Server Management Studio 2012
帶好你的小板凳,我們一起揚帆起航!

[SQL Server]數(shù)據(jù)庫入門之多表查詢

??SQL_Server之多表查詢

??笛卡爾乘積的講解

在數(shù)據(jù)庫中有一種叫笛卡爾乘積其語法如下:
select * from People,Department

此查詢結(jié)果會將People表的所有數(shù)據(jù)和Department表的所有數(shù)據(jù)進行依次排列組合形成新的記錄。例如People表有10條記錄,Department表有3條記錄,則排列組合之后查詢結(jié)果會有10*3=30條記錄.

??多表查詢

接下來我們來看幾個例子吧!

1.查詢員工信息,顯示部門信息

select * from People,department where People.DepartmentId = department.DepartmentId 

[SQL Server]數(shù)據(jù)庫入門之多表查詢

2.查詢員工信息,顯示職級名稱

select * from People,s_rank where People.RankId = s_rank.RankId

[SQL Server]數(shù)據(jù)庫入門之多表查詢

3.查詢員工信息,顯示部門名稱,顯示職級名稱

select * from People,department,s_rank 
	where People.departmentId = department.DepartmentId and People.RankId = s_rank.RankId 

[SQL Server]數(shù)據(jù)庫入門之多表查詢

??內(nèi)連接查詢

在數(shù)據(jù)庫的查詢過程中,存在有內(nèi)連接查詢,這個時候,我們就需要用到inner這個關(guān)鍵字,下面我們來看幾個例子吧!

1.查詢員工信息,顯示部門信息

select * from People inner join department on People.departmentId = department.DepartmentId

[SQL Server]數(shù)據(jù)庫入門之多表查詢

2.查詢員工信息,顯示職級名稱

select * from People inner join s_rank on People.RankId = s_rank.RankId

[SQL Server]數(shù)據(jù)庫入門之多表查詢

3.查詢員工信息,顯示部門名稱,顯示職級名稱

select * from People inner join department on People.departmentId = department.DepartmentId
inner join s_rank on People.RankId = s_rank.RankId

[SQL Server]數(shù)據(jù)庫入門之多表查詢

??外連接查詢(左外連,右外連,全外連)

1.查詢員工信息,顯示部門信息(左外連)

select * from People left join department on People.departmentId = department.DepartmentId

[SQL Server]數(shù)據(jù)庫入門之多表查詢

2.查詢員工信息,顯示職級名稱(左外接)

select * from People left join s_rank on People.RankId = s_rank.RankId

[SQL Server]數(shù)據(jù)庫入門之多表查詢

3.查詢員工信息,顯示部門名稱,顯示職級名稱(左外連)

select * from People left join department on People.departmentId = department.DepartmentId
inner join s_rank on People.RankId = s_rank.RankId

[SQL Server]數(shù)據(jù)庫入門之多表查詢

4.右外連

A left join B = B right join A

select * from People right join department on People.departmentId = department.DepartmentId

[SQL Server]數(shù)據(jù)庫入門之多表查詢

??全外連查詢(無論是否符合關(guān)系,都要顯示數(shù)據(jù))

1.select * from People full join department on People.departmentId = department.DepartmentId
[SQL Server]數(shù)據(jù)庫入門之多表查詢

??多表查詢的主要例子

1.查詢出武漢地區(qū)所有的員工信息,要求顯示部門名稱,以及員工的詳細資料(顯示中文別名)

select PeopleId 員工編號,DepartmentName 部門名稱,PeopleName 員工姓名,PeopleSex 員工性別,
PeopleBirth 員工生日,PeoPleSalary 月薪,PeoplePhone 電話,PeopleAddress 地址
from People,department where People.departmentId = department.DepartmentId

[SQL Server]數(shù)據(jù)庫入門之多表查詢

2.查詢出武漢地區(qū)所有員工的信息,要求顯示部門名稱,職級名稱以及員工的詳細資料

select PeopleId 員工編號,DepartmentName 部門名稱,RankName 職級名稱, PeopleName 員工姓名,PeopleSex 員工性別,
PeopleBirth 員工生日,PeoPleSalary 月薪,PeoplePhone 電話,PeopleAddress 地址
from People,department,s_rank where People.departmentId = department.DepartmentId 
and People.RankId = s_rank.RankId and PeopleAddress = '武漢'

[SQL Server]數(shù)據(jù)庫入門之多表查詢

3.根據(jù)部門分組統(tǒng)計員工人數(shù),員工工資總和,平均工資,最高工資和最低工資

select DepartmentName 部門名稱, count(*) 員工人數(shù),sum(PeopleSalary) 工資總和,avg(PeopleSalary) 平均工資,max(PeopleSalary) 最高工資,min(PeopleSalary) 最低工資 
from People,department
	where People.departmentId = department.DepartmentId
		group by department.DepartmentId,DepartmentName

[SQL Server]數(shù)據(jù)庫入門之多表查詢

4.根據(jù)部門分組統(tǒng)計員工人數(shù),員工工資總和,平均工資,最高工資和最低工資平均工資在10000元以下的不參與排序。根據(jù)平均工資降序排序

select DepartmentName 部門名稱, count(*) 員工人數(shù),sum(PeopleSalary) 工資總和,avg(PeopleSalary) 平均工資,max(PeopleSalary) 最高工資,min(PeopleSalary) 最低工資 
from People,department
	where People.departmentId = department.DepartmentId 
		group by department.DepartmentId,DepartmentName	
			having avg(PeopleSalary) >= 15000 
				order by avg(PeopleSalary) desc

[SQL Server]數(shù)據(jù)庫入門之多表查詢

5.根據(jù)部門名稱,然后根據(jù)職位名稱分組,統(tǒng)計員工人數(shù),員工工資總和
平均工資,最高工資,和最低工資

select DepartmentName 部門名稱,RankName 職級名稱, count(*) 員工人數(shù),sum(PeopleSalary) 工資總和,avg(PeopleSalary) 平均工資,max(PeopleSalary) 最高工資,min(PeopleSalary) 最低工資 
from People,department,s_rank
	where People.departmentId = department.DepartmentId and People.RankId = s_rank.RankId
		group by department.DepartmentId,DepartmentName,s_rank.RankId,s_rank.RankName

[SQL Server]數(shù)據(jù)庫入門之多表查詢

??如何鞏固學(xué)習(xí)

提示:在學(xué)習(xí)的過程中,我們需要先自行進行思考,而不是一遇到不會的就放棄思考直接看答案,如果最后遇到真的不會的題目,我們可以適當(dāng)?shù)倪M行觀看答案,看自己的思路是否正確,在作出正確的判斷

好啦今日的分享到這里就結(jié)束啦,我是愛你們的M malloc希望可以幫助到你們噢,最后別忘記三連啦??!

提醒:以上內(nèi)容僅可自學(xué),不可自行發(fā)散。如許轉(zhuǎn)載請聯(lián)系作者,否則將追究責(zé)任。
[SQL Server]數(shù)據(jù)庫入門之多表查詢

[SQL Server]數(shù)據(jù)庫入門之多表查詢文章來源地址http://www.zghlxwxcb.cn/news/detail-477012.html

到了這里,關(guān)于[SQL Server]數(shù)據(jù)庫入門之多表查詢的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • SQL之多表查詢

    SQL之多表查詢

    項目開發(fā)中,在進行數(shù)據(jù)庫表結(jié)構(gòu)設(shè)計時,會根據(jù)業(yè)務(wù)需求及業(yè)務(wù)模塊之間的關(guān)系,分析并設(shè)計表結(jié)構(gòu),由于業(yè)務(wù)之間相互關(guān)聯(lián),所以各個表結(jié)構(gòu)之間也存在著各種聯(lián)系,基本上分為三種: 一對多(多對一) 案例:部門與員工的關(guān)系 關(guān)系:一個部門對應(yīng)多個員工,一個員工對應(yīng)一

    2024年02月06日
    瀏覽(30)
  • SQL Server數(shù)據(jù)庫 -- 表的高級查詢

    SQL Server數(shù)據(jù)庫 -- 表的高級查詢

    ? 一、子查詢 嵌套子查詢 相關(guān)子查詢 二、查詢運算 并運算union 交運算intersect 差運算except 三、函數(shù)的使用 if語句 while語句 case語句 四、總結(jié) 高級子查詢是對查詢更靈活的運用,學(xué)會了高級查詢將對數(shù)據(jù)庫使用有很大的幫助。 ? ? ? 在SQL語言中,一個select-from-where語句稱為一

    2024年02月13日
    瀏覽(91)
  • SQL Server數(shù)據(jù)庫 -- 表的基礎(chǔ)查詢

    SQL Server數(shù)據(jù)庫 -- 表的基礎(chǔ)查詢

    一、單表查詢基本結(jié)構(gòu) 二、單表查詢結(jié)構(gòu)語法 select 聚合函數(shù) where 模糊查詢 order by group by having 三、多表查詢基本結(jié)構(gòu) 四、多表查詢結(jié)構(gòu)語法 內(nèi)連接 自連接 外連接 五、總結(jié) ? ? ? ? 學(xué)習(xí)了數(shù)據(jù)庫,在以后公司等地方,你可能不會用到創(chuàng)建數(shù)據(jù)庫或者表格,但是你一定會使

    2024年02月11日
    瀏覽(101)
  • 【數(shù)據(jù)庫Microsoft SQL Server】實驗一 數(shù)據(jù)庫的定義與單表查詢

    一、實驗?zāi)康?1.要求學(xué)生熟悉掌握在DBMS中用SQL語言定義數(shù)據(jù)庫、表、主碼及外碼。 2.熟悉關(guān)系數(shù)據(jù)庫中常用數(shù)據(jù)類型,為關(guān)系表各屬性定義合理的數(shù)據(jù)類型。 3.在建立好的數(shù)據(jù)庫表中輸入部分虛擬數(shù)據(jù),實現(xiàn)基于單表的sql查詢并分析查詢結(jié)果。 二、實驗環(huán)境與實驗準備工作

    2024年02月05日
    瀏覽(35)
  • 數(shù)據(jù)庫SQL Server實驗報告 之 SQL語言進行簡單查詢(3/8)

    實驗名稱 ?????????SQL語言進行簡單查詢 注意:原版word在下載資源里面(免費下載) 實驗?zāi)康募耙螅?掌握各種查詢的SQL腳本寫法,包括SELECT、FROM、WHERE、GROUP BY、HAVING子句的用法,特別要求比較內(nèi)連接、外連接的結(jié)果 在XSGL數(shù)據(jù)庫中,使用各種查詢條件完成指定的查詢

    2024年02月02日
    瀏覽(109)
  • Python 通過pymssql訪問查詢操作 SQL Server數(shù)據(jù)庫

    Python 通過pymssql訪問查詢操作 SQL Server數(shù)據(jù)庫

    在企業(yè)應(yīng)用開發(fā)中,經(jīng)常用到應(yīng)用程序訪問數(shù)據(jù)庫的開發(fā)模式,中小企業(yè)使用的數(shù)據(jù)庫中,以ms SQL Server居多。本文就以一個簡單的實例模型,簡單介紹一下python訪問ms sql sever數(shù)據(jù)庫的方法。 本文中以下面的本地SQL Server數(shù)據(jù)庫為例進行數(shù)據(jù)庫連接,數(shù)據(jù)表的查詢、增加、刪除

    2024年02月10日
    瀏覽(378)
  • SQL Server數(shù)據(jù)庫查詢速度慢的原因和解決方法

    SQL Server數(shù)據(jù)庫查詢速度慢的原因和解決方法 SQL Server 數(shù)據(jù)庫 查詢速度慢的原因有很多,常見的有以下幾種: 1、沒有索引或者沒有用到索引(這是查詢慢最常見的問題,是程序設(shè)計的缺陷) 2、I/O吞吐量小,形成了瓶頸效應(yīng)。 3、沒有創(chuàng)建計算列導(dǎo)致查詢不優(yōu)化。 4、內(nèi)存不足

    2024年02月07日
    瀏覽(95)
  • Sql Server中查詢數(shù)據(jù)庫所有表及其數(shù)據(jù)總條數(shù)和占用空間

    1、查詢某數(shù)據(jù)庫中的所有數(shù)據(jù)表 SELECT name 數(shù)據(jù)表 FROM sysobjects WHERE xtype=\\\'u\\\' ORDER BY name 2、查詢某數(shù)據(jù)庫中的所有數(shù)據(jù)表及其數(shù)據(jù)總條數(shù) SELECT a.name 數(shù)據(jù)表, b.rows 數(shù)據(jù)總條數(shù) FROM sysobjects AS a INNER JOIN sysindexes AS b ON a.id = b.id WHERE ( a.type = \\\'u\\\' ) AND ( b.indid IN ( 0, 1 ) ) ORDER BY a.name,b.row

    2024年02月02日
    瀏覽(29)
  • 【SQL Server】數(shù)據(jù)庫開發(fā)指南(五)T-SQL 高級查詢綜合應(yīng)用與實戰(zhàn)

    【SQL Server】數(shù)據(jù)庫開發(fā)指南(五)T-SQL 高級查詢綜合應(yīng)用與實戰(zhàn)

    本系列博文還在更新中,收錄在專欄:#MS-SQL Server 專欄中。 本系列文章列表如下: 【SQL Server】 Linux 運維下對 SQL Server 進行安裝、升級、回滾、卸載操作 【SQL Server】數(shù)據(jù)庫開發(fā)指南(一)數(shù)據(jù)庫設(shè)計的核心概念和基本步驟 【SQL Server】數(shù)據(jù)庫開發(fā)指南(二)MSSQL數(shù)據(jù)庫開發(fā)對

    2023年04月18日
    瀏覽(120)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包