2017-03-16 16 views

回答

1

此查詢具有所謂的相關子查詢。您可以將查詢視爲運行兩個嵌套循環,遍歷從emp開始的所有可能的行對。下面是它的心臟:

WHERE a.sal <= e.sal 

eSELECTFROM emp e)指定的行,而a嵌套SELECTFROM emp a)指定的行。該條件使得嵌套查詢計算所有行數小於外部查詢的行的emp行。外部查詢包括低薪工資低於或等於五時的工資。

請注意,具有相同工資的行將被多次計數,這可能會減少返回集中的行數。例如,如果有六個薪水相同的底薪人員,則查詢將返回一組空行。您可以使用DISTINCT來更改此行爲。

+0

感謝您的回答。但是我不明白這句話:「當低薪水數低於或等於五時,外部查詢包括薪水。」但在外部查詢中,我們使用5> =。在內部查詢中,我計算婆婆每當a.sal <= e.sal意味着我總是隻能獲得更高的薪水。那麼外部查詢在低於5的情況下如何包含sal。實際上它應該提供更高的薪水。我無法理解我在錯誤的方向思考,請糾正我 –

相關問題