Oracle 10g如何實現進階查詢
許多人愁不會Oracle 10g的進階查詢,其實也是比較簡單的。在查詢數據時,爲了獲取完整的資訊就要將多個表連接起來,這也是關係數據庫的一個重要特性---表之間存在的關係。這種關係可以將表的數據聯繫起來。多表查詢就是根據這種關係,實現從多個表中獲取數據還原資訊。下面這個圖就是我將要操作的表結構。
工具/材料
Oracle 10g
操作方法
基本連接查詢
在簡單查詢中我們一般只使用了from字句的一個表,然而在關係數據庫中,表與表之間往往是存在關係的,這就是要求從多個表中檢索數據,以輸出更有意義的結果。最簡單的連接方式就是在select語句中,透過from子句使用多個表,並用逗號將不同的基本表隔開。下面語句將商品資訊表和供應商資訊表連接起來,查詢其中的商品名稱,產地,供應商名稱。
但此時結果顯示該查詢語句共顯示了200行記錄,這顯然是錯誤的。因爲僅僅透過select和from子句連接那麼查詢結果將是一個透過笛卡兒積生成的表,包含大量無意義的資訊。而where語句可以有效避免笛卡兒積的出現。只有當兩個表具有相同匹配的列時才返回結果集。例如下面語句透過在where子句中使用連接條件,實現了每件商品名稱,產地,供應商名稱資訊。
但也要注意一個問題如果想要查詢“供應商編號”應該怎麼處理,因爲兩個表中都有“供應商編號”,所以應該查詢的時候限定一下,說明究竟是哪一個表中的。
join連接查詢
join用於連接兩個不同的表,on用於給出這兩個表之間的連接條件。如果進一步限制查詢範圍,可以在後面添加where語句,下面示例使用從商品資訊表和供應商資訊表查詢單價大於1200元的商品資訊。
並且join連接也可以實現兩個以上的表查詢,寫語句的時候一個join對應一個on,看下面的例子。
自然連接查詢
其實自然連接查詢(natural join)就是更加方便的join連接查詢,自然連接不必指定任何同等連接條件,系統將自動判斷出具有相同名稱的列然後形成匹配,但注意自然連接是根據兩個表中同名的列而進行連接的,當列不同名時,自然連接將失去意義。
集合操作查詢
集合操作就是將兩個或多個SQL查詢結合構成符合查詢,集合操作符有union(並集)、intersect(交集)、minus(差集),現在以union爲例,union查詢必須從每個表中讀取相同的列。
子查詢
子查詢和連接查詢一樣提供了使用單個查詢訪問多個表中的數據的方法,使用in關鍵字,意思是在in後面的集合中查詢我們需要的,即in後面是限定條件。
特別提示
注意在Oracle 10g中的標點符號是英文狀態下的
-
手機如何快速將兩張圖片拼接在一起
不用其他軟件,就用微信就可以把兩張圖片拼接在一起,快來和我一起學學吧。操作方法(01)開啟微信,點擊右下角的“我”,開啟收藏。(02)點一下右上角的圓圈加號圖標。(03)選擇左下角的圖片,在相冊中選擇自己想要合併的兩張圖片。(04)選擇好圖片之後選擇右上角三個點的地方。(05)在...
-
Uki如何發佈動態?Uki動態攻略?
美麗的人很多,有趣的靈魂卻很少。當代的年輕人喜歡透過網絡社交結識更多的朋友,拓展社交圈子,希望大家都能遇到對的人呀。以下給大家分享一下uki如何發佈動態以及uki動態攻略。操作方法(01)先點開uki軟件,如下圖(02)在uki的主頁裏,點擊最下方第二個【鈴鐺】位置,如圖(03)然...
-
QQ怎麼領取免費氣泡
操作方法(01)登入手機qq,點擊左上角頭像。(02)選擇我的個性裝扮。(03)再選擇氣泡。(04)活動有一些是免費的,大多數是需要充值的,一個一個點開看有哪些是免費的,能設定就是免費的。也可以直接點擊右上角搜尋。(05)一般微笑河馬,浪花朵朵,巧克力棒和麼麼噠這幾個是免費的,可以直接...
-
微信開視頻怎麼美顏
操作方法(01)開啟手機,在選單介面點擊“設定”按鈕。(02)在“設定”介面,點擊“其他設定“選項。(03)在“更多設定”介面點擊“視頻通話特效“選項。(04)在“視頻通話特效”介面勾選“微信”。(05)開啟“微信”進行“視頻通話”就可以自動美顏。OPPOR15...