第3章SQL3-模糊查詢_第1頁
第3章SQL3-模糊查詢_第2頁
第3章SQL3-模糊查詢_第3頁
第3章SQL3-模糊查詢_第4頁
第3章SQL3-模糊查詢_第5頁
已閱讀5頁,還剩28頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、第章第章SQL模糊查詢模糊查詢 2使用字符匹配運(yùn)算符使用字符匹配運(yùn)算符通配符含義舉例說明%代表零個(gè)或多個(gè)字符的任意字符串like LO%表示所有以”LO”開頭的名字_任意單個(gè)字符like _rt表示所有以”rt”結(jié)尾的三個(gè)字母的名字 任意在指定范圍內(nèi)或集合中的單個(gè)字符like a-dear表示所有以”a”到”d”中任意一個(gè)字母開頭,以”ear”結(jié)尾的四個(gè)字母的名字任意不在指定范圍或集合中的單個(gè)字符like DC%表示所有以”D”開頭、第二個(gè)字母不為”C”的名字3模糊查詢模糊查詢【例例1】 在在student表中查詢陳姓學(xué)生的基本信息,查詢表中查詢陳姓學(xué)生的基本信息,查詢結(jié)果以班號(hào)降序排序。結(jié)果

2、以班號(hào)降序排序。4USE xkglGOSELECT *FROM studentWHERE studentname LIKE 李%ORDER by classid DESCGO 5程序代碼【例例2】 查詢姓名中包含有查詢姓名中包含有“麗麗”字的同學(xué)姓名,學(xué)號(hào)。字的同學(xué)姓名,學(xué)號(hào)。6【例例3】 查詢姓名中以查詢姓名中以“麗麗”字結(jié)尾的同學(xué)姓名,學(xué)號(hào)。字結(jié)尾的同學(xué)姓名,學(xué)號(hào)。7【例例4】 查詢姓名中以查詢姓名中以“麗麗”字結(jié)尾的同學(xué)姓名,學(xué)號(hào)。字結(jié)尾的同學(xué)姓名,學(xué)號(hào)。8【例例5】 查詢家住成都市的同學(xué)姓名,學(xué)號(hào),家庭住址。查詢家住成都市的同學(xué)姓名,學(xué)號(hào),家庭住址。9【例例6】 查詢姓名是二個(gè)字的同學(xué)

3、姓名。查詢姓名是二個(gè)字的同學(xué)姓名。10【例例7】 查詢姓名是三個(gè)字的同學(xué)姓名。查詢姓名是三個(gè)字的同學(xué)姓名。11select studentnamefrom studentwhere len(studentname)=3121、查詢?nèi)w學(xué)生信息中不是姓李的同學(xué)信息。2、查詢學(xué)號(hào)尾號(hào)既不是1也不是2的的學(xué)生信息。3、在student表中查詢男學(xué)生信息,按入學(xué)時(shí)間升序排列。、查詢不住在東軟宿舍3棟的老師姓名,及住宿地址。、查詢姓“張”、“李”、“王”的教師的信息。6、查詢包含了“云”也包含了“周”的同學(xué)信息。13練習(xí):練習(xí):在數(shù)據(jù)xkgl數(shù)據(jù)庫中查詢(示例數(shù)據(jù)庫)14 WHERE子句的常用查詢條件比

4、較運(yùn)算符比較運(yùn)算符 、=、=、!、!=數(shù)據(jù)類型為數(shù)據(jù)類型為text、ntext、image的數(shù)據(jù)不可用的數(shù)據(jù)不可用比較運(yùn)算符。比較運(yùn)算符。15使用邏輯運(yùn)算符使用邏輯運(yùn)算符 and、or、not三種。BETWEENAND運(yùn)算符查詢指定條件范圍的記錄 使用BETWEENAND運(yùn)算符查詢時(shí)在BETWEEN運(yùn)算符和AND運(yùn)算符后面都需要給定一個(gè)值。其語法格式如下: 字段1 BETWEEN 值1 AND 值2 16例:查詢總分超過50的學(xué)生學(xué)號(hào),分?jǐn)?shù)查詢總分在50到100之間的學(xué)生學(xué)號(hào),分?jǐn)?shù)查詢總分在小于50或者大于100的學(xué)生學(xué)號(hào),分?jǐn)?shù)查詢總分既不小于50也不大于100的學(xué)生學(xué)號(hào),分?jǐn)?shù)17 集合運(yùn)算符

5、集合運(yùn)算符in、not in,用來查找某個(gè)值是否屬于某個(gè)集合記錄。,用來查找某個(gè)值是否屬于某個(gè)集合記錄。18例:查詢班號(hào)不是Cs010901的學(xué)生信息(用比較運(yùn)算)select *from studentwhere classid!=Cs01090119例:查詢班號(hào)不是Cs010901的學(xué)生信息(用邏輯運(yùn)算)select *from studentwhere not classid=Cs01090120例:查詢班號(hào)不是Cs010901的學(xué)生信息(用集合運(yùn)算)select *from studentwhere classid not in (Cs010901)21練習(xí):查詢職稱為教授或者年齡超過

6、50歲的女教師信息。查詢出生日期在1975到1980間的教師信息。查詢不在1975出生的教師信息。 查詢“09軟件技術(shù)1班”或者是“09軟件測(cè)試1班”的班級(jí)信息。 查詢既不是“09軟件技術(shù)1班”也不是“09軟件測(cè)試1班”的班級(jí)信息。 22用函數(shù)查詢 學(xué)習(xí)目標(biāo):知道常用的內(nèi)置函數(shù)的種類會(huì)使用字符串等常用的內(nèi)置函數(shù)23常用日期函數(shù)GETDATE() -函數(shù)以DATETIME 的缺省格式返回系統(tǒng)當(dāng)前的日期和時(shí)間DAY() -函數(shù)返回date_expression 中的日期值MONTH() -函數(shù)返回date_expression 中的月份值YEAR() -函數(shù)返回date_expression 中的

7、年份值DATEDIFF( , ,)函數(shù)返回兩個(gè)日期之間的天數(shù)/月數(shù)、年數(shù)。24例例1:2007年年12月月20號(hào)與號(hào)與2008年年12月月30號(hào)相隔多少天,號(hào)相隔多少天,多少月,多少年?多少月,多少年?25SELECT DATEDIFF(day,2007-12-20,2008-12-30)SELECT DATEDIFF(month,2007-12-20,2008-12-30)SELECT DATEDIFF(year,2007-12-20,2008-12-30)例:例:1990年年1月月28號(hào)與今天相隔多少天,多少月,號(hào)與今天相隔多少天,多少月,多少年?多少年?26SELECT DATEDIFF

8、(day,1990-1-28,getdate()SELECT DATEDIFF(month,1990-1-28,getdate()SELECT DATEDIFF(year,1990-1-28,getdate()27常用字符串函數(shù)LTRIM() -函數(shù)把字符串頭部(左邊)的空格去掉RTRIM() -函數(shù)把字符串尾部(右邊)的空格去掉LEFT(),RIGHT(),SUBSTRING() -函數(shù)返回部分字符串 例例3:把學(xué)生姓名中的空格去掉:把學(xué)生姓名中的空格去掉例例4: select substring(abd,2,2)28例例5: 姓陳的同學(xué)的姓名;姓陳的同學(xué)的姓名;例例6:以:以 “麗麗”字結(jié)尾的同學(xué)姓名字結(jié)尾的同學(xué)姓名29程序代碼:SELECT studentname 姓名FROM studentWHERE LEFT(studentname,1)=陳GO 30Left(字符型表達(dá)式,整型表達(dá)式)函數(shù)返回字符串中從左邊開始指定個(gè)數(shù)的字符。等價(jià)于使用通配符“陳%”。程序代碼?SELECT studentname 姓名FROM studentWHERE RIGHT(studentname,1)=陳GO 31應(yīng)該寫為:SELECT studentname FROM studentWHERE studentname

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論