Database 板


LINE

※ 引述《bohei (run and fall)》之銘言: : 小弟是用Oracle的,所以不確定是不是100%一樣, : 第一層的EXISTS因為沒下任何跟外面相關連的條件, : 所以當有select row即視為TRUE,再遇到NOT,當然就變成FALSE : 你試著在第一層的EXISTS加上關聯條件,就可以得到不同的結果了~ : GO! 謝謝 剛剛試了一下 還是不太懂 然後之前 SELECT * FROM s, p, sp WHERE NOT EXISTS ( SELECT * FROM s WHERE NOT EXISTS ( SELECT * FROM sp WHERE s.s = sp.s AND p.p = sp.p ) ); 上面這一串 我只改了第一個Not exists裡的From 從s,p改成s 就跑出 Sname s PName p s p s1 1 p1 1 1 1 s2 2 p1 1 1 1 s1 1 p1 1 1 2 s2 2 p1 1 1 2 s1 1 p1 1 2 1 s2 2 p1 1 2 1 這樣的結果... 搞得我好亂阿= =" --



※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.238.195.54
※ 文章網址: http://webptt.com/m.aspx?n=bbs/Database/M.1406897183.A.D44.html
1F:→ bohei:等等....你最裡面的s跟p到底是指哪兒的s跟p? 08/01 21:17
2F:→ bohei:你先試著把table都給別名,不然連自己在寫什麼都混亂了, 08/01 21:22
3F:→ bohei:又要怎麼去解讀SELECT後的結果呢 08/01 21:22
4F:→ bohei:另外,execution plan可以看SQL細部的計畫 08/01 21:29
剛剛試了一下 EXPLAIN SELECT * FROM s, p, sp WHERE NOT EXISTS ( SELECT * FROM s AS ss, p AS pp WHERE NOT EXISTS ( SELECT * FROM sp WHERE s.s = sp.s AND p.p = sp.p ) ); 節錄輸出 id select_type table type key rows Extra 1 PRIMARY s ALL NULL 2 1 PRIMARY p ALL NULL 2 Using where 1 PRIMARY sp index PRIMARY 3 Using index 2 DEP~ SUBQUERY ss index PRIMARY 2 Using index 2 DEP~ SUBQUERY pp index PRIMARY 2 Using where;Using index 3 DEP~ SUBQUERY sp eq_ref PRIMARY 1 Using index 看來似乎是指向中間的s和p 只是小弟不才 看不太出來這說明了什麼....Orz ※ 編輯: yscgk (36.238.195.54), 08/01/2014 23:31:52 後來發現我裡面沒改 以下是改變的部分 EXPLAIN SELECT * FROM s, p, sp WHERE NOT EXISTS ( SELECT * FROM s AS ss, p AS pp WHERE NOT EXISTS ( SELECT * FROM sp AS spsp WHERE ss.s = spsp.s AND pp.p = spsp.p ) ); 輸出 id select_type table type key rows Extra 1 PRIMARY NULL NULL NULL NULL Impossible WHERE 2 SUBQUERY ss index PRIMARY 2 Using index 2 SUBQUERY pp index PRIMARY 2 Using where; Using index 3 DEP~ SUBQUERY spsp eq_ref PRIMARY 1 Using index 這個看起來就是輸出為空 不過有了這些 我也還是不會解釋 其實別名這問題一直困惑著我 別名後的Table 和原來的table是怎樣的情況阿... ※ 編輯: yscgk (36.238.195.54), 08/01/2014 23:45:31
5F:→ bohei:你最後的例子,就是一開始講的那樣吧,你應該去看一下 08/01 23:54
6F:→ bohei:EXISTS是怎麼決定是否讓主SELEC回傳的 08/01 23:54
謝謝bohei大大 大感謝 就如你所說的 我在兩個not exists內都加入了和外面的連結後(s.s=ss.s...etc) 就出現了滿意的結果 Sname s PName p s p s1 1 p1 1 1 1 s1 1 p2 2 1 2 s2 2 p1 1 2 1 所以說別名過後的table操作的狀況 和主select的table是沒關係的(不知道這樣說對不對) 真的謝謝bohei大大 ※ 編輯: yscgk (36.238.195.54), 08/02/2014 00:17:24
7F:→ bohei:三層分別以1.2.3來表示好了,我一開始就以為你的意思是 08/02 00:19
8F:→ bohei:1與2連結 2與3連結,所以我沒考慮到1直接跟3,這部分我不確定 08/02 00:20
9F:→ yscgk:新手上路.有時我也不知我在做啥..可以安心睡了~謝謝你 08/02 00:23







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:BabyMother站內搜尋

TOP