<span id="mktg5"></span>

<i id="mktg5"><meter id="mktg5"></meter></i>

        <label id="mktg5"><meter id="mktg5"></meter></label>
        最新文章專題視頻專題問答1問答10問答100問答1000問答2000關(guān)鍵字專題1關(guān)鍵字專題50關(guān)鍵字專題500關(guān)鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關(guān)鍵字專題關(guān)鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
        問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
        當(dāng)前位置: 首頁 - 科技 - 知識百科 - 正文

        實例簡析SQL嵌套子查詢

        來源:懂視網(wǎng) 責(zé)編:小采 時間:2020-11-09 13:43:01
        文檔

        實例簡析SQL嵌套子查詢

        實例簡析SQL嵌套子查詢:實例簡析SQL嵌套子查詢: 一些初級程序員常常對SQL語法中的子查詢,由其對嵌套子查詢(子查詢中包含一個子查詢)的使用比較生疏,本文就此做一個基本講解,相信新手會有一定收獲。 使用子查詢的原則 1.一個子查詢必須放在圓括號中。 2.將子查詢放在比較條件的
        推薦度:
        導(dǎo)讀實例簡析SQL嵌套子查詢:實例簡析SQL嵌套子查詢: 一些初級程序員常常對SQL語法中的子查詢,由其對嵌套子查詢(子查詢中包含一個子查詢)的使用比較生疏,本文就此做一個基本講解,相信新手會有一定收獲。 使用子查詢的原則 1.一個子查詢必須放在圓括號中。 2.將子查詢放在比較條件的

        實例簡析SQL嵌套子查詢: 一些初級程序員常常對SQL語法中的子查詢,由其對嵌套子查詢(子查詢中包含一個子查詢)的使用比較生疏,本文就此做一個基本講解,相信新手會有一定收獲。 使用子查詢的原則 1.一個子查詢必須放在圓括號中。 2.將子查詢放在比較條件的

          實例簡析SQL嵌套子查詢:

          一些初級程序員常常對SQL語法中的子查詢,由其對嵌套子查詢(子查詢中包含一個子查詢)的使用比較生疏,本文就此做一個基本講解,,相信新手會有一定收獲。

          使用子查詢的原則

          1.一個子查詢必須放在圓括號中。

          2.將子查詢放在比較條件的右邊以增加可讀性。

          子查詢不包含 ORDER BY 子句。對一個 SELECT 語句只能用一個 ORDER BY 子句,

          并且如果指定了它就必須放在主 SELECT 語句的最后。

          ORDER BY 子句可以使用,并且在進行 Top-N 分析時是必須的。

          3.在子查詢中可以使用兩種比較條件:單行運算符和多行運算符。

          子查詢的類型

          單行子查詢:從內(nèi) SELECT 語句只返回一行的查詢

          多行子查詢:從內(nèi) SELECT 語句返回多行的查詢

          單行子查詢

          單行子查詢是從內(nèi)查詢返回一行的查詢。在該子查詢類型中用一個單行操作符。幻燈片中列出了單行操作符。

          例

          顯示那些 job ID 與雇員 141 相同的雇員。

          SELECT last_name, job_id

          FROM employees

          WHERE job_id =

          (SELECT job_id

          FROM employees

          WHERE employee_id = 141);

          SELECT last_name, job_id, salary

          FROM employees

          WHERE job_id =

          (SELECT job_id

          FROM employees

          WHERE employee_id = 141)

          AND salary >

          (SELECT salary

          FROM employees

          WHERE employee_id = 143);

          顯示 job ID 與雇員 141 相同,并且薪水 高于雇員 143 的那些雇員。

          注:外和內(nèi)查詢可以從不同的表中取得數(shù)據(jù)。

          SELECT last_name, job_id, salary

          FROM employees

          WHERE salary =

          (SELECT MIN(salary)

          FROM employees);

          求所有人誰的工資最小。

          SELECT department_id, MIN(salary)

          FROM employees

          GROUP BY department_id

          HAVING MIN(salary) >

          (SELECT MIN(salary)

          FROM employees

          WHERE department_id = 50);

          求每個部門的最小工資,但是要高于50號部門的工資。

          SELECT employee_id, last_name

          FROM employees

          WHERE salary =

          (SELECT MIN(salary)

          FROM employees

          GROUP BY department_id);

          問題出現(xiàn)在:單行子查詢返回了多個查詢值;

          應(yīng)改為:

          SELECT employee_id, last_name

          FROM employees

          WHERE salary in

          (SELECT MIN(salary)

          FROM employees

          GROUP BY department_id);

          SELECT last_name, job_id

          FROM employees

          WHERE job_id =

          (SELECT job_id

          FROM employees

          WHERE last_name = ’Haas’);

          如果子查詢返回的是零值,不會對主程序造成影響;

          如果子查詢返回的是空值,那么會影響主程序的返回值;

          SELECT employee_id,

          last_name

          FROM employees

          WHERE employee_id NOT IN

          (SELECT manager_id

          FROM employees)

          SELECT employee_id,

          last_name

          FROM employees

          WHERE employee_id NOT IN

          (SELECT manager_id

          FROM employees

          WHERE manager_id IS NOT NULL)

          放在select下的子查詢的返回值必須是一個具體值,

          from后面也可以加子查詢;

          having后面也可以加子查詢;

          order by后面也可以;

          多列子查詢適應(yīng)于:成對比較;非成對比較。

          SELECT employee_id, manager_id, department_id

          FROM employees

          WHERE (manager_id, department_id) IN

          (SELECT manager_id, department_id

          FROM employees

          WHERE employee_id IN (178,174))

          AND employee_id NOT IN (178,174);

          輸出:176 149 80

          只有要查詢的東西和你子查詢返回的東西一一對應(yīng)上了,你的查詢才能成功。

          如果有一個 對應(yīng)不上那么你的查詢不會成功。

          非成對的子查詢:

          SELECT employee_id, manager_id, department_id

          FROM employees

          WHERE manager_id IN (SELECT manager_id

          FROM employees

          WHERE employee_id IN (174,141))

          AND department_id IN (SELECT department_id

          FROM employees

          WHERE employee_id IN (174,141))

          AND employee_id NOT IN(174,141);

          輸出:144 124 50

          143 124 50

          142 124 50

          176 149 80

          上面兩個程序就是成對子查詢和非成對子查詢兩者之間的區(qū)別。

          如果我想去顯示員工信息,要求:員工的工資高于本部門的平均工資。

          SELECT a.last_name,

          a.salary,

          a.department_id

          FROM employees a

          WHERE a.salary >

          (SELECT AVG(salary)

          FROM employees b

          WHERE b.department_id = a.department_id);

          in line view(內(nèi)聯(lián)視圖)

          SELECT a.last_name, a.salary,

          a.department_id, b.salavg

          FROM employees a, (SELECT department_id,

          AVG(salary) salavg

          FROM employees

          GROUP BY department_id) b

          WHERE a.department_id = b.department_id

          AND a.salary > b.salavg;

          數(shù)據(jù)分散于多個表中需要進行拼合

          SELECT DISTINCT c.LastName, c.FirstName

          FROM Person.Contact c JOIN HumanResources.Employee e

          ON e.ContactID = c.ContactID WHERE EmployeeID IN

          (SELECT SalesPersonID

          FROM Sales.SalesOrderHeader

          WHERE SalesOrderID IN

          (SELECT SalesOrderID

          FROM Sales.SalesOrderDetail

          WHERE ProductID IN

          (SELECT ProductID

          FROM Production.Product p

          WHERE ProductNumber LIKE 'FW123%')));

        聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權(quán)等問題請及時與本網(wǎng)聯(lián)系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

        文檔

        實例簡析SQL嵌套子查詢

        實例簡析SQL嵌套子查詢:實例簡析SQL嵌套子查詢: 一些初級程序員常常對SQL語法中的子查詢,由其對嵌套子查詢(子查詢中包含一個子查詢)的使用比較生疏,本文就此做一個基本講解,相信新手會有一定收獲。 使用子查詢的原則 1.一個子查詢必須放在圓括號中。 2.將子查詢放在比較條件的
        推薦度:
        標(biāo)簽: 查詢 sql 示例
        • 熱門焦點

        最新推薦

        猜你喜歡

        熱門推薦

        專題
        Top
        主站蜘蛛池模板: 日本系列1页亚洲系列| 亚洲一区中文字幕| 国产激情久久久久影院老熟女免费| 亚洲色成人网站WWW永久| 免费国产草莓视频在线观看黄| 国产精品免费电影| 亚洲第一成人在线| 亚洲高清免费在线观看| 亚洲AV综合色区无码二区偷拍| 免费无码又爽又刺激聊天APP| www.亚洲精品| 亚洲精品国产精品| 亚洲精品天堂成人片?V在线播放| 一级毛片在线播放免费| 亚洲AV无码久久精品狠狠爱浪潮| 222www免费视频| 亚洲AV无码之国产精品| 激情97综合亚洲色婷婷五| 无码成A毛片免费| 亚洲AV一二三区成人影片| 四虎永久免费影院| 国产免费无码AV片在线观看不卡| 91亚洲一区二区在线观看不卡| 国产精品成人免费视频网站京东| 国产精品亚洲小说专区| 好看的电影网站亚洲一区| 国产成人免费网站| 国产精品高清免费网站| 亚洲欧洲自拍拍偷午夜色| www国产亚洲精品久久久日本| 三年片在线观看免费西瓜视频| 国产亚洲成归v人片在线观看| 免费在线观看一级片| 亚洲爆乳成av人在线视菜奈实 | 成人免费看黄20分钟| 亚洲免费视频一区二区三区| 自怕偷自怕亚洲精品| 免费观看午夜在线欧差毛片| 高清一区二区三区免费视频| 亚洲国产午夜精品理论片在线播放 | 国产精品亚洲精品日韩动图|