国产亚洲精品福利在线无卡一,国产精久久一区二区三区,亚洲精品无码国模,精品久久久久久无码专区不卡

當前位置: 首頁 > news >正文

網(wǎng)站開發(fā)看書湖北網(wǎng)站seo

網(wǎng)站開發(fā)看書,湖北網(wǎng)站seo,wordpress注冊用戶,wordpress 制作側邊欄🎉歡迎您來到我的MySQL基礎復習專欄 ☆* o(≧▽≦)o *☆哈嘍~我是小小惡斯法克🍹 ?博客主頁:小小惡斯法克的博客 🎈該系列文章專欄:力扣刷題講解-MySQL 🍹文章作者技術和水平很有限,如果文中出…

?🎉歡迎您來到我的MySQL基礎復習專欄

☆* o(≧▽≦)o *☆哈嘍~我是小小惡斯法克🍹
?博客主頁:小小惡斯法克的博客
🎈該系列文章專欄:力扣刷題講解-MySQL
🍹文章作者技術和水平很有限,如果文中出現(xiàn)錯誤,希望大家能指正🙏
📜 感謝大家的關注!???

?

目錄

🚀組合兩個表

?🚀總結:關于on

?🚀超過經(jīng)理收入的員工


🚀組合兩個表

表:?Person

+-------------+---------+
| 列名         | 類型     |
+-------------+---------+
| PersonId    | int     |
| FirstName   | varchar |
| LastName    | varchar |
+-------------+---------+
personId 是該表的主鍵(具有唯一值的列)。
該表包含一些人的 ID 和他們的姓和名的信息。

表:?Address

+-------------+---------+
| 列名         | 類型    |
+-------------+---------+
| AddressId   | int     |
| PersonId    | int     |
| City        | varchar |
| State       | varchar |
+-------------+---------+
addressId 是該表的主鍵(具有唯一值的列)。
該表的每一行都包含一個 ID = PersonId 的人的城市和州的信息。

編寫解決方案,報告?Person?表中每個人的姓、名、城市和州。如果?personId?的地址不在?Address?表中,則報告為?null?。

以?任意順序?返回結果表。

結果格式如下所示。

示例 1:

輸入: 
Person表:
+----------+----------+-----------+
| personId | lastName | firstName |
+----------+----------+-----------+
| 1        | Wang     | Allen     |
| 2        | Alice    | Bob       |
+----------+----------+-----------+
Address表:
+-----------+----------+---------------+------------+
| addressId | personId | city          | state      |
+-----------+----------+---------------+------------+
| 1         | 2        | New York City | New York   |
| 2         | 3        | Leetcode      | California |
+-----------+----------+---------------+------------+
輸出: 
+-----------+----------+---------------+----------+
| firstName | lastName | city          | state    |
+-----------+----------+---------------+----------+
| Allen     | Wang     | Null          | Null     |
| Bob       | Alice    | New York City | New York |
+-----------+----------+---------------+----------+
解釋: 
地址表中沒有 personId = 1 的地址,所以它們的城市和州返回 null。
addressId = 1 包含了 personId = 2 的地址信息。

思路:

1.觀察到問題中有一個關鍵:如果?personId?的地址不在?Address?表中,則報告為?null?。

2.很顯然,通過這句話無論 person 是否有地址信息都要返回信息,那么返回null,其實就是因為沒有對應的城市和州

3.既然都要返回人的PersonId ,FirstName, LastName,要左表的全部信息,所以使用左查詢

4.讓person作左表,Address 作右表

5.我們分析出這一步還不算完成,我們還要知道左外連接on的具體知識,請看下面

6..很明顯,在person表中,personId是它的主鍵,Address表中addressId對應了personId

7..那么我們的on后面的條件肯定是從personld這個字段來建立關系,關系就是p.PersonId = a.PersonId,由此可以返回出address表中的數(shù)據(jù)

8.select * from?Person as p left join Address as a?on 條件

9.把*優(yōu)化一下

10.代碼如下

select FirstName, LastName, City, State
from Person as p
left join Address as a
on p.PersonId = a.PersonId

執(zhí)行:?

?

注意:如果沒有某個人的地址信息,使用?where?子句過濾記錄將失敗,因為它不會顯示姓名信息。?

?🚀總結:關于on

在 MySQL 中,多表查詢中的左外連接(LEFT JOIN)是一種用于連接兩個表的查詢操作,它會返回左表中的所有記錄,以及符合連接條件的右表記錄。在左外連接中,ON 后面連接的條件具體是指定兩個表之間的連接條件,它決定了在連接時哪些行應該被匹配。

具體來說,ON 后面的條件通常是用來指定連接兩個表的列之間的關聯(lián)關系。這些條件可以是等值比較(例如,table1.column1 = table2.column2),也可以是其他類型的比較操作(例如,大于、小于、包含等)。這些條件決定了在連接時哪些行應該被匹配起來。

ON 的作用是在進行表連接時指定連接條件,它告訴數(shù)據(jù)庫引擎在進行左外連接時應該如何匹配兩個表的行。通過指定連接條件,可以確保在連接時只有符合條件的行會被匹配起來,從而實現(xiàn)多表查詢的目的。

舉個例子,假設我們有兩個表 A 和 B,我們想要以 A 表的所有記錄為基礎,同時將符合某些條件的 B 表記錄連接起來。在這種情況下,我們可以使用左外連接來實現(xiàn)這一目的。ON 后面的條件將決定 A 表和 B 表之間的連接條件,只有滿足條件的記錄才會被連接起來。

?🚀超過經(jīng)理收入的員工

表:Employee?

+-------------+---------+
| Column Name | Type    |
+-------------+---------+
| id          | int     |
| name        | varchar |
| salary      | int     |
| managerId   | int     |
+-------------+---------+
id 是該表的主鍵(具有唯一值的列)。
該表的每一行都表示雇員的ID、姓名、工資和經(jīng)理的ID。

編寫解決方案,找出收入比經(jīng)理高的員工。

以?任意順序?返回結果表。

結果格式如下所示。

示例 1:

輸入: 
Employee 表:
+----+-------+--------+-----------+
| id | name  | salary | managerId |
+----+-------+--------+-----------+
| 1  | Joe   | 70000  | 3         |
| 2  | Henry | 80000  | 4         |
| 3  | Sam   | 60000  | Null      |
| 4  | Max   | 90000  | Null      |
+----+-------+--------+-----------+
輸出: 
+----------+
| Employee |
+----------+
| Joe      |
+----------+
解釋: Joe 是唯一掙得比經(jīng)理多的雇員。

思路:

方法一

1.在這里面只有一張表,表中有一個很大的缺陷就是并沒有去記錄員工的直屬領導是誰,只有一個字段managerId

2.這個managerId指的就是領導的id,所以managerId指代的就是當前表的主鍵,員工id

3.那么我們可以先找出員工對應的領導,如遇到這種類型的題,只有一個表,那必然是用到自連接的

4.提到自連接,就自然聯(lián)想到了一句話,自連接查詢中,必須要為表起別名,很簡單的邏輯,自連接其實就是把這題想成兩個表,一個員工表,一個領導表,只是說兩個表長的一樣而已,所以名字肯定是要不同,那么我們假設員工表是a,領導表是b

5.那么我們的員工對應的領導的連接條件是什么呢?

6.員工的managerId? = 領導的id

7.來實現(xiàn)一下這個過程(自連接的語法)

8.select * from?Employee a join?Employee b on?b.id = a.managerId

9.但我們的目的并不是找員工對應的領導,我們還有一個條件,要員工工資大于領導工資,也就是a.salary > b.salary

10.我們又想起,連接兩個條件的關鍵字是什么?and

11.此時select * from?Employee a join?Employee b on?b.id = a.managerId and?a.salary > b.salary

12.此時優(yōu)化一下 *?

select a.name as Employee
from 
Employee as ajoin
Employee as bon
a.managerId =b.id and a.salary>b.salary ;

執(zhí)行:?

?

方法二:

1.嵌套查詢,直接抓著工資硬剛

2.Employee表還是取一個別名a 作為員工表

3.select name as Employee from?Employee as a where salary >? 經(jīng)理的薪資

4.也就是select name as Employee from?Employee as a where salary > (select salary from Employee where Id = a.Managerid )

5.大于號后面的條件就理解為,查取員工對應的領導的薪資

6.整體理解為員工的薪資 大于 員工對應的領導的薪資,則查詢出來了

select name as Employee from?Employee as a where salary > (select salary from Employee where Id = a.Managerid ) ;

寫到這里,每日兩題的力扣就結束了,但是對于第二題來說,我個人認為肯定是自連接的方式讓大家更為接受!

http://m.aloenet.com.cn/news/30508.html

相關文章:

  • 做動漫網(wǎng)站侵權嗎揚州網(wǎng)絡優(yōu)化推廣
  • 怎么通過微博做網(wǎng)站外鏈百度seo外包
  • wordpress游戲網(wǎng)站百度優(yōu)化推廣
  • 做網(wǎng)站賭博的推廣是不是犯罪的上海全網(wǎng)推廣
  • 公司網(wǎng)站 域名網(wǎng)絡營銷成功案例有哪些
  • 商業(yè)網(wǎng)站建設的方法外國網(wǎng)站怎么進入
  • 做圖素材網(wǎng)站開哪個vip好熱搜榜上2023年熱門話題
  • 怎么在外管局的網(wǎng)站做延期seo服務價格表
  • 怎樣做_網(wǎng)站做seo百度網(wǎng)站的域名地址
  • 3d做號網(wǎng)站每日精選12條新聞
  • 設計前沿的網(wǎng)站東莞網(wǎng)站關鍵詞優(yōu)化公司
  • 做社群的網(wǎng)站有哪些西安百度推廣怎么做
  • wordpress html插件優(yōu)化網(wǎng)站做什么的
  • 哪家公司做網(wǎng)站最好網(wǎng)絡營銷專業(yè)技能
  • 明年做那些網(wǎng)站致富網(wǎng)站優(yōu)化包括哪些
  • 無極網(wǎng)站站怎么有的下不了如何讓百度收錄自己信息
  • 新都網(wǎng)站開發(fā)鄭州百度網(wǎng)站優(yōu)化排名
  • 營銷網(wǎng)站的搭建磁力兔子
  • 類似非小號的網(wǎng)站怎么做軟文推廣一般發(fā)布在哪些平臺
  • 上城網(wǎng)站建設百度快照推廣是什么意思
  • 網(wǎng)站添加視頻代碼網(wǎng)絡建站流程
  • 亞馬遜做deal的網(wǎng)站淘寶指數(shù)網(wǎng)址
  • 網(wǎng)站建設怎樣上傳程序企業(yè)網(wǎng)站營銷的實現(xiàn)方式
  • 做網(wǎng)站的畢設開題依據(jù)在線注冊網(wǎng)站
  • 如何在office做網(wǎng)站360站長平臺
  • 公司網(wǎng)站維護好做嗎百度移動端排名軟件
  • 網(wǎng)站建設外包流程網(wǎng)站排名優(yōu)化怎樣做
  • 萊蕪亓家網(wǎng)站優(yōu)化神馬網(wǎng)站關鍵詞排名價格
  • 網(wǎng)站建設在線視頻百度云搜索入口
  • diy做網(wǎng)站搜索關鍵詞的工具