<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
        主站蜘蛛池模板: 自怕偷自怕亚洲精品| www.亚洲精品.com| 亚洲性猛交xx乱| 24小时在线免费视频| 亚洲午夜免费视频| 99久久精品国产免费| 亚洲欧洲日产国产综合网| 午夜视频免费在线观看| 亚洲精品成人图区| 国产四虎免费精品视频| 亚洲图片中文字幕| 成年人免费观看视频网站| 国产成人综合亚洲一区| 亚洲女人被黑人巨大进入| 91在线视频免费观看| 亚洲五月六月丁香激情| 114一级毛片免费| 亚洲AV无码专区在线观看成人| 女人18毛片a级毛片免费视频| 亚洲日韩乱码中文字幕| 欧美大尺寸SUV免费| 真人无码作爱免费视频| 免费a级毛片视频| 产传媒61国产免费| 亚洲综合色婷婷七月丁香| 久久精品成人免费网站| 亚洲精品国产第1页| 久久久高清免费视频| 亚洲AV成人噜噜无码网站| 免费国产黄网站在线观看可以下载| 亚洲成年轻人电影网站www | 中国国产高清免费av片| 性做久久久久免费观看| 亚洲色最新高清av网站| 亚洲精品视频在线看| 在线观看肉片AV网站免费| 亚洲精品视频在线观看免费| 99久久免费精品国产72精品九九| 亚洲成a人无码亚洲成av无码| 免费a级毛片在线观看| 最近国语视频在线观看免费播放 |