七而柑、SQL-子查詢④(標(biāo)量子查詢select)

標(biāo)量子查詢:可以當(dāng)做是select列表中的一個列,唯一約束條件是子查詢的返回值必須只有一行記錄荷逞,且只能有一個列。但并不是只能返回唯一的值粹排,它可以隨當(dāng)前查詢記錄而變化种远。如:


SELECT FId,FName,(SELECT MAX(FYearPublished) 
FROM T_Book WHERE T_Book. FCategoryId= T_Category.FId) FROM T_Category

SELECT語句首先檢索FId、FName兩個字段顽耳,第三個字段不是一個列而是一個子查詢坠敷。這個子查詢位于主查詢的內(nèi)部,它返回一類圖書的最新出版年份射富。因為聚合函數(shù)僅返回一行記錄膝迎,所以這滿足標(biāo)量子查詢的條件。通過WHERE語句胰耗,這個子查詢也被連接到外部的SELECT查詢語句中限次,因為這個連接,MAX(FYearPublished)將返回每類圖書的最新出版年份柴灯。

注意:這里的子查詢依賴于外部查詢中的字段,不可以單獨執(zhí)行卖漫。(這里的子查詢是依賴于外部查詢中的T_Category.FId字段的,這個子查詢是無法單獨執(zhí)行的)若在數(shù)據(jù)庫系統(tǒng)中執(zhí)行以下SQL語句:


SELECT MAX(FYearPublished) FROM T_Book WHERE T_Book. FCategoryId= T_Category.FId

執(zhí)行后數(shù)據(jù)庫系統(tǒng)會報出如下的錯誤信息:

無法綁定由多個部分組成的標(biāo)識符"T_Category.FId"赠群。

因為這個子查詢中引用了外部查詢中的字段羊始。這種引用了外部查詢中字段的子查詢被稱為相關(guān)子查詢。

執(zhí)行結(jié)果:


FId FName
1 Story 2002
2 History 2008
3 Theory 1971
4 Technology 2005
5 Art 1771
6 Philosophy 2001

下面結(jié)合執(zhí)行結(jié)果來仔細(xì)分析一下這句SQL語句查描。首先看執(zhí)行結(jié)果中的第一行突委,它的FId是1.子查詢通過T_Book表中的FCategoryId字段和T_Category表中的FId連接到外部查詢柏卤。對于第一行,F(xiàn)Id是1匀油,因此子查詢在T_Book表中檢索FCategoryId字段等于1的所有圖書的FYearPublished字段的最大值缘缚;接著查看外部查詢的第二行,F(xiàn)Id是2钧唐,這次子查詢檢索T_Book表中FCategoryId字段等于2的所有圖書的FYearPublished字段的最大值忙灼;然后查看外部查詢的第三行……以此類推。

如果沒有子查詢中的WHERE子句將子查詢連接到外部查詢钝侠,則結(jié)果將只是子查詢返回的所有記錄的最大值该园。

如:修改上以上SQL語句,將子查詢中WHERE 子句刪除帅韧,得到如下SQL語句:


SELECT FId,FName,(SELECTMAX(FYearPublished) 
FROM T_Book) FROM T_Category

執(zhí)行結(jié)果:


FId FName
1 Story 2008
2 History 2008
3 Theory 2008
4 Technology 2008
5 Art 2008
6 Philosophy 2008

MAX(FYearPublished) 現(xiàn)在是T_Book 表中所有記錄的最大出版年份里初,它不與任何書籍分類相關(guān)。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末忽舟,一起剝皮案震驚了整個濱河市双妨,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌叮阅,老刑警劉巖刁品,帶你破解...
    沈念sama閱讀 221,273評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異浩姥,居然都是意外死亡挑随,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,349評論 3 398
  • 文/潘曉璐 我一進店門勒叠,熙熙樓的掌柜王于貴愁眉苦臉地迎上來兜挨,“玉大人,你說我怎么就攤上這事眯分“杌悖” “怎么了?”我有些...
    開封第一講書人閱讀 167,709評論 0 360
  • 文/不壞的土叔 我叫張陵弊决,是天一觀的道長噪舀。 經(jīng)常有香客問我,道長飘诗,這世上最難降的妖魔是什么傅联? 我笑而不...
    開封第一講書人閱讀 59,520評論 1 296
  • 正文 為了忘掉前任,我火速辦了婚禮疚察,結(jié)果婚禮上蒸走,老公的妹妹穿的比我還像新娘。我一直安慰自己貌嫡,他們只是感情好比驻,可當(dāng)我...
    茶點故事閱讀 68,515評論 6 397
  • 文/花漫 我一把揭開白布该溯。 她就那樣靜靜地躺著,像睡著了一般别惦。 火紅的嫁衣襯著肌膚如雪狈茉。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,158評論 1 308
  • 那天掸掸,我揣著相機與錄音氯庆,去河邊找鬼。 笑死扰付,一個胖子當(dāng)著我的面吹牛堤撵,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播羽莺,決...
    沈念sama閱讀 40,755評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼实昨,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了盐固?” 一聲冷哼從身側(cè)響起荒给,我...
    開封第一講書人閱讀 39,660評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎刁卜,沒想到半個月后志电,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,203評論 1 319
  • 正文 獨居荒郊野嶺守林人離奇死亡蛔趴,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,287評論 3 340
  • 正文 我和宋清朗相戀三年挑辆,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片夺脾。...
    茶點故事閱讀 40,427評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖茉继,靈堂內(nèi)的尸體忽然破棺而出咧叭,到底是詐尸還是另有隱情,我是刑警寧澤烁竭,帶...
    沈念sama閱讀 36,122評論 5 349
  • 正文 年R本政府宣布菲茬,位于F島的核電站,受9級特大地震影響派撕,放射性物質(zhì)發(fā)生泄漏婉弹。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,801評論 3 333
  • 文/蒙蒙 一终吼、第九天 我趴在偏房一處隱蔽的房頂上張望镀赌。 院中可真熱鬧,春花似錦际跪、人聲如沸商佛。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,272評論 0 23
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽良姆。三九已至肠虽,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間玛追,已是汗流浹背税课。 一陣腳步聲響...
    開封第一講書人閱讀 33,393評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留痊剖,地道東北人韩玩。 一個月前我還...
    沈念sama閱讀 48,808評論 3 376
  • 正文 我出身青樓,卻偏偏與公主長得像邢笙,于是被迫代替她去往敵國和親啸如。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,440評論 2 359