日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

SQL语言之DQL语言学习(八)多表查询/链接查询 SQL92学习

發(fā)布時間:2025/3/20 数据库 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 SQL语言之DQL语言学习(八)多表查询/链接查询 SQL92学习 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

用法:

當查詢的字段來自于多個表時,就會用到連接查詢

按照功能分類

內(nèi)連接: 等值/非等值鏈接,自鏈接

外連接: 左/右外連接,全外鏈接

交叉鏈接

笛卡爾乘積現(xiàn)象

表1有m行,表2有n行,結(jié)果=m*n行

發(fā)生原因:沒有有效的連接條件

一.內(nèi)鏈接之等值連接

案例一:從女生表查找到男生表中的男女朋友關(guān)系

SELECT name,boyName FROM boys,beauty WHERE beauty.boyfriend_id=boys.id

案例二:添加篩選條件

查詢有獎金的員工名,部門名

SELECT last_name,department_name,commission_pct FROM employees,departments WHERE employees.department_id=departments.department_id and employees.commission_pct is not null


案例三:添加分組

查詢每個城市的部門個數(shù)

SELECT count(*) 個數(shù), city FROM departments, locations WHERE departments.location_id=locations.location_id GROUP BY city;


案例四:添加排序

查詢每個工種的工種名 和 員工的個數(shù),并按照員工的個數(shù)進行排序

SELECT job_title,count(*) FROM employees,jobs WHERE jobs.job_id = employees.job_id GROUP BY job_title ORDER BY COUNT(*) DESC;


案例四:實現(xiàn)三表鏈接
查詢員工名,部門名 和 所在的城市

SELECT last_name,department_name,city FROM employees,departments,locations WHERE employees.department_id=departments.department_id and departments.location_id = locations.location_id ORDER BY department_name DESC;

二.內(nèi)鏈接之非等值連接

查詢員工的工資與工資級別

SELECT last_name,salary,grade_level FROM employees e, job_grades g WHERE salary BETWEEN g.lowest_sal and g.highest_sal

自連接

即連續(xù)查詢一個表兩次

案例:查詢員工名和上級領(lǐng)導(dǎo)的名稱

因為上級領(lǐng)導(dǎo)也是屬于員工,需要在員工表中查詢兩次

SELECT e.employee_id ,e.last_name 員工名 ,m.employee_id,m.last_name 領(lǐng)導(dǎo)名 FROM employees e, employees m #查詢第一遍備注為e,第二遍為m WHERE e.manager_id=m.manager_id

總結(jié)

以上是生活随笔為你收集整理的SQL语言之DQL语言学习(八)多表查询/链接查询 SQL92学习的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。