資源描述:
《SQL中select用法分解》由會員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。
1、select語句是是最常用的數(shù)據(jù)查詢語句,我們通過例子來逐步了解它的使用。?SELECT*FROMdepartments;?這條語句中有2個(gè)關(guān)鍵字(keywords)SELECT和FROM其中*代表通配符號,表示departments表中的所有信息。假設(shè)departments表中有如下四個(gè)字段:department_id,department_name,department_age,department_job?那么我們可以認(rèn)為SELECT*FROMdepartments;這個(gè)語句也就等同于SELECTdepartment_i
2、d,department_name,department_age,department_jobFROMdepartments;?所以,據(jù)此我們可以以此推斷,如果我們只想檢索department_name,department_age這兩個(gè)字段,我們只需要將上述語句修改為:SELECTdepartment_name,depatment_ageFROMdepartments;?注意:我們在書寫SQL語句時(shí)需要知道如下基本常識。????1我們可以通過多行的書寫來完成一條SQL語句,而不必要寫成一行。????2?SQL語句是不區(qū)分大小
3、寫的。????3關(guān)鍵字是不能分離或者簡寫的????4?子句往往是另起一行書寫的,這樣做是為了增加可讀性。??????例如:SELECT????????????department_name,department_age????????????FROMdepartments;????5關(guān)鍵字通常是大寫的,其他的如表名,字段通常小寫??附加:table(表)的顯示規(guī)則?????通常情況下查詢結(jié)束后,在iSQL-PLUS環(huán)境下,顯示出來的查詢結(jié)果具有如下特點(diǎn)。?????1字段名通常是大寫并且居中的。????2字符型和日期型數(shù)據(jù)通常是
4、“左對齊”顯示的????3數(shù)字型數(shù)據(jù)通常是“右對齊”顯示的????4默認(rèn)顯示通常全部是大寫?ArithmeticExpressions--計(jì)算擴(kuò)展在使用SELECT語句進(jìn)行查詢的過程中我們可以充分的利用一些簡單的計(jì)算來豐富我們的查詢方式與結(jié)果。例如:?SELECTlast_name,salary,salary+300FROMemployees;?在這里我們看到了salary+300這個(gè)emlpoyees表中本來不存在的字段。那么會出現(xiàn)什么樣的查詢結(jié)果呢?我們很容易想到查詢結(jié)果中會出現(xiàn)3列,他們分別是?last_name??sa
5、lary??salary+300king???????100?????400neil????????10000???10300.??????????.???????..??????????.???????.?在這里我們我們只需要注意一個(gè)問題,那就是字段名。很顯然last_name,salary是我們在之前就已紀(jì)存在的字段,而salary+300則是系統(tǒng)默認(rèn)生成的。所以我們可以推斷,如果我們不額外指定字段名,那么系統(tǒng)將用查詢公式來充當(dāng)默認(rèn)的字段名。如何指定一個(gè)新的字段名,或?qū)⒃械淖侄味x一個(gè)別名呢?我們在下面就會講到。?關(guān)于運(yùn)
6、算查詢我們只需注意運(yùn)算法則,相信這對中國學(xué)生來說并不是一個(gè)難事。?現(xiàn)在我們來討論一下關(guān)于null的概念。我們對如下數(shù)據(jù)進(jìn)行比較,null,0,spacenull??代表什么都沒有,它沒有具體的值與之對應(yīng)0?????代表了一個(gè)實(shí)實(shí)在在的數(shù)字space?代表了一個(gè)空格,我們完全可以說它是一個(gè)字符型數(shù)據(jù),使存在的。?任何一個(gè)數(shù)值和null進(jìn)行and運(yùn)算他的結(jié)果都是null,當(dāng)然也包括*,/?下面我們來看另外一條重要的語句:給字段(列)定義別名。這個(gè)語句非常有用,可以有效地幫助我們檢索并顯示我們需要的信息。例子:SELECTdepar
7、tment_name?ASname,department_idID?FROMdepartments;?SELECTdepartment_name"name",salary*12"Newsalary"FROMdepartments;?這兩句話,甚至一句話中都有不同的寫法,但表述的卻是同一個(gè)意思。定義別名,關(guān)鍵字AS,給列定義別名我們可以用as,當(dāng)然也可以不用例如第一句中后半句,department_idID。。。這里我們就沒有用as,但同樣是給department_id定義一個(gè)別名“ID”。同樣,我們也可以用雙引號來定義別名,就
8、像第二句一樣。通過這樣的語句,我們在看到的查詢結(jié)果,列名就由原來的department_name變成了name.....?這里還有一種SELECT的選擇方式,連接選擇。顧名思義,這個(gè)選擇的意思就是將查詢結(jié)果連接起來,而所用的符號是我們非常常見的“
9、
10、”,“或”運(yùn)算。我們可以這