freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

[計(jì)算機(jī)]第4章sqlppt-文庫吧

2025-02-07 00:27 本頁面


【正文】 WHERE 電話 LIKE ‘72_1%’ 執(zhí)行結(jié)果如圖 。 〖 例 417〗 查詢調(diào)度員表 ddy中 電話號(hào)碼前兩位為‘ 72’,第 3位 為‘ 2’或‘ 3’或‘ 4’的人員名單。 SELECT 姓名 ,電話 FROM ddy WHERE 電話 LIKE ‘72[2,3,4]%’ 執(zhí)行結(jié)果如圖 。 〖 例 418〗 查詢 jsy表中駕照號(hào)最 后一位不是’ 1’或’ 2’的人員的駕照 號(hào)、姓名、籍貫和積分。 SELECT 駕照號(hào) ,姓名 ,籍貫 ,積分 FROM jsy WHERE 駕照號(hào) LIKE ‘_ _[^1,2]’ 執(zhí)行結(jié)果如圖 。 如果要查找的字符中包含通 配符,則使用 ESCAPE轉(zhuǎn)義字符 功能來處理。 ESCAPE表示其后 出現(xiàn)的第一個(gè)表示通配符的字符 不再被視為通配符,而被當(dāng)做普 通字符對(duì)待。 若車輛表 cl中“啟用年代”列 用“ 89_2”、“ 02_1”這樣的形式表 示,其含義為第一、二個(gè)字符表 示年份,第四個(gè)字符表示季度, 中間用下劃線連接。如“ 02_1”表 示 2022年第 1季度,“ 89_2”表示 1989年第 2季度。 〖 例 419〗 查詢車輛表 cl中 2022 年啟用的所有車輛的信息。 SELECT * FROM cl WHERE 啟用年代 LIKE ‘02t_ _’ ESCAPE ‘t’ 如圖 ?!?t’表示語句中第 1個(gè)‘ _’ 不再是通配符,而是普通字符, 第 2個(gè)‘ _’則是通配符。 限定范圍 使用 BETWEEN關(guān)鍵字 當(dāng)要查詢的條件是某個(gè)值的 范圍時(shí),可以使用 BETWEEN關(guān) 鍵字,其格式為: expression [NOT] BETWEEN begin_expression AND end_expression 其中 begin_expression的值不能 大于 end_expression的值。當(dāng)要 查詢的數(shù)據(jù)在 begin_expression 與 end_expression之間用 BETWEEN關(guān)鍵字;當(dāng)要查詢的 數(shù)據(jù)不在 begin_expression與 end_expression之間用 NOT BETWEEN關(guān)鍵字。其實(shí),使用 BETWEEN表達(dá)式進(jìn)行查詢的結(jié)果 與使用 ‘ =’和 ‘ =’的邏輯表達(dá)式的 查詢結(jié)果相等,使用 NOT BETWEEN進(jìn)行查詢的結(jié)果與使 用 ‘ ’和 ‘ ’的邏輯表達(dá)式的查詢結(jié) 果相等,其返回值為 TRUE或 FALSE。 〖 例 420〗 查詢 cl表中維修費(fèi)用 增加 50%后的預(yù)計(jì)費(fèi)用在 2022元 與 3000元之間的車輛信息。 SELECT 車牌號(hào) ,類別 ,‘預(yù)計(jì)費(fèi) 用’ =維修費(fèi)用 *(1+) FROM cl WHERE 維修費(fèi)用 *(1+) BETWEEN 2022 AND 3000 執(zhí)行結(jié)果如圖 。 使用 IN關(guān)鍵字 使用 IN關(guān)鍵字可以用較為簡(jiǎn) 潔的語句來實(shí)現(xiàn)復(fù)雜的查詢,其 格式為: expression [NOT] IN ( subquery | expression[,…n] ) 其中 sbuquery為子查詢 expression[,…n] 為指定的一個(gè)值 表,值表中列出所有可能的值。當(dāng) 要搜索在列表中的數(shù)據(jù)時(shí)用 IN關(guān)鍵 字,當(dāng)要搜索不在列表中的數(shù)據(jù)時(shí) 用 NOT IN關(guān)鍵字。 〖 例 421〗 查詢 jsy表中籍貫是’天 津’或’北京’或’上?!鸟{駛員情況 SELECT 駕照號(hào),姓名,所學(xué)專業(yè),籍貫,積分 FROM jsy WHERE 籍貫 IN( ‘津’ ,‘北京’ ,‘上海’) 執(zhí)行結(jié)果如圖 。 該例中若要查詢籍貫不是‘天津’或 ‘北京’或‘上?!鸟{駛員,則使用下 面的 WHERE子句: WHERE 籍貫 NOT IN( ‘天津’ ,‘北 京’ ,‘上?!? 空值判定 當(dāng)需要判定表達(dá)式的值是否 為空值時(shí),使用 IS NULL關(guān)鍵字, 格式為: expression IS [NOT] NULL 當(dāng)無 NOT選項(xiàng)時(shí),若表達(dá)式 expression的值為空值,返回 TRUE,否則返回 FALSE;有 NOT選項(xiàng)時(shí)返回值則相反。 〖 例 422〗 查詢行車表 xc中單人 駕車的行車記錄。 SELECT 主駕 ,車牌號(hào) ,出車單號(hào) , 調(diào)度號(hào) FROM xc WHERE 副駕 IS NULL 執(zhí)行結(jié)果如圖 。 五、輸出數(shù)據(jù)排序 前面使用 SELECT語句查詢的 結(jié)果都是沒有經(jīng)過排序的。為了方 便查看輸出數(shù)據(jù),可以對(duì)查詢的結(jié) 果進(jìn)行排序。 SELECT語句中用于 排序的子句是 ORDER BY,其格 式是: ORDER BY {expression [ASC | DESC]}[,…n] 其中 expression指定用于排序的列。 ASC關(guān)鍵字表示升序排列, DESC 關(guān)鍵字表降序排列,在默認(rèn)情況 下, ORDER BY子句按升序進(jìn) 行排序,即默認(rèn)使用的是 ASC關(guān) 鍵字。如果你要求按降序進(jìn)行排 列,必須使用 DESC關(guān)鍵字。 n表示可以同時(shí)指定多個(gè)排序的列 Ntext、 text和 image類型的數(shù)據(jù) 不能進(jìn)行排序,此類列名不允許 出現(xiàn)在 ORDER BY子句中。 〖 例 423〗 查詢 jsy表中所學(xué)專業(yè) 為汽車指揮的駕駛員的積分,并 按積分降序排列。 SELECT 駕照號(hào) ,姓名 ,所學(xué)專業(yè) ,積分 FROM jsy WHERE 所學(xué)專業(yè) =’汽車指揮’ ORDER BY 積分 DESC 如圖 可以用列在輸出列表中的位置 來指定需要排序的列,如上例中排 序列’積分’在輸出列表中的位置是 4,查詢語句可以改為: SELECT 駕照號(hào) ,姓名 ,所學(xué)專業(yè) , 積分 FROM jsy WHERE 所學(xué)專業(yè) =’汽車指揮’ ORDER BY 4 DESC 如果要對(duì)計(jì)算列的值進(jìn)行排序,在 ORDER BY子句中的expression必須是計(jì)算列的表達(dá)式或是為該計(jì)算列指定的列名。 〖 例 424〗 查詢 cl表中每輛車的單位里程維修費(fèi)用,將查詢結(jié)果按降序排列。 SELECT 車牌號(hào) ,類別 ,啟用年代 , ‘每百公里維修費(fèi)用’ =round(維修 費(fèi)用 /累計(jì)里程 *100,2) FROM cl ORDER BY ‘每百公里 維修費(fèi)用’ DESC 執(zhí)行結(jié)果如圖 。 如果要根據(jù)兩列或多列的結(jié)果 進(jìn)行排序,可以用逗號(hào)分隔不同的 排序列,排序優(yōu)先級(jí)按排序列的先 后次序,即首先按第 1排序列進(jìn)行 排序,在第 1排序列的值相同的情 況下,再按第 2排序列排序。 〖 例 425〗 查詢 jsy表中各專業(yè)的駕駛員的積分情況。 SELECT 駕照號(hào) ,姓名 ,所學(xué)專業(yè) ,積分 FROM js ORDER BY 所學(xué)專業(yè) ,積分 DESC 執(zhí)行結(jié)果如圖 。 六、多表連接 前面我們使用的 SELECT語句 都是從數(shù)據(jù)庫的單個(gè)表中查詢所要 的數(shù)據(jù),在實(shí)際應(yīng)用中,多數(shù)情況 下我們需要查詢的數(shù)據(jù)來自多個(gè)數(shù) 據(jù)表,如查詢駕駛員出車情況和所 駕車輛情況,需要從 xc表、 cd表 和 cl表中搜索相關(guān)數(shù)據(jù),涉及多個(gè) 表的查詢稱為連接查詢。 連接查詢時(shí)表與表之間需要進(jìn) 行連接,兩個(gè)表之間的連接可以有 兩種,即在 WHERE子句中用關(guān)系 運(yùn)算表示的連接和在 FROM子句中 用 JOIN關(guān)鍵字指定的連接。 (一)關(guān)系運(yùn)算連接 在 SELECT語句 WHERE子句中使用 不同表的列進(jìn)行關(guān)系運(yùn)算可以在表 之間建立連接。為了說明連接過 程,我們分析一下兩個(gè)表的任意連 接。下面語句連接行車 xc與車單表 cd所有行。 SELECT * FROM xc,cd 該例中沒有 WHERE子句,連接時(shí) 將第一個(gè)表的每一行和第二個(gè)表的 每一行相結(jié)合。一般情況下,有 n 行的第一個(gè)表和有 m行的第二個(gè)表 連接將產(chǎn)生 n*m行的結(jié)果集。由于 兩個(gè)表的任意行的數(shù)據(jù)之間沒有對(duì) 應(yīng)關(guān)系,所以連接產(chǎn)生的行也就沒 有什么實(shí)際意義。該連接也稱為交 叉連接或完全連接,一般使用很 少。 在上面的交叉連接中若通過 WHERE子句除去大多不希望的結(jié) 果行,就可以得到所需要有意義 的查詢結(jié)果。 〖 例 426〗 查詢每次出車的日期、目的地和行程情況。 SELECT xc.*,cd.* FROM xc,cd WHERE = 執(zhí)行結(jié)果如圖 。 上例可改為: SELECT xc.*, ,cd. 目 的地 ,cd. 大約行程 , FROM xc,cd WHERE = 車單號(hào) 該連接則稱為自然連接,是使用最 多的一種連接。 可以在 WHERE子句中指定更 多的條件,進(jìn)一步篩選兩個(gè)表的連 接行。 〖 例 427〗 查詢由 0112號(hào)調(diào)度員 調(diào)度的 AX1320車的駕駛員情況。 SELECT ,名 , , FROM xc,jsy WHERE =xc.駕照號(hào) AND =’0112’ AND =’AX1320’ 執(zhí)行結(jié)果如圖 。 〖 例 428〗 在 jsy表和 ddy表中查 詢駕駛員年齡大于調(diào)度員年齡的 情況。假設(shè) ddy表中已有‘出生年 月’字段且每個(gè)記錄已有相應(yīng)的字 段值。 SELECT , , , FROM jsy, ddy WHERE ddy.出生時(shí)間 執(zhí)行結(jié)果如圖 。 連接的兩個(gè)表也可以是同一個(gè) 表,在這種情況下表與其本身進(jìn)行 連接,必須使用表的別名來完成, 同時(shí)列也使用限定名。 SELECT語句還可以在兩個(gè) 以上的表中查詢,此時(shí)需要在 WHERE子句中用到多個(gè)比較運(yùn)算 符來實(shí)現(xiàn)表的兩兩連接。在 SQL Server中,理論上使用 SELECT 語句可以連接的表的最大數(shù)目為 64,但實(shí)際上, 5到 8個(gè)表是 SELECT語句所能連接的極限數(shù) 目。如果必須連接 8個(gè)以上的表, 則該數(shù)據(jù)庫的設(shè)計(jì)可能沒有優(yōu)化 需要考慮重新設(shè)計(jì)數(shù)據(jù)庫本身。 〖 例 429〗 查詢每個(gè)駕駛員的姓 名、出車記錄及調(diào)度員姓名。 SELECT , , 號(hào) , , FROM jsy t1, ddy t2, cd t3, xc t4 WHERE = AND =t3 .出車單號(hào) AND =t2 .調(diào)度號(hào) 執(zhí)行結(jié)果如圖 。 其中 FROM 子句定義了 t t t3 和 t4分別為表 jsy 、 ddy、 cd和 xc的別名。當(dāng)表定義了別名,在 語句中限定字段名時(shí)即用別名代 替表名,以簡(jiǎn)化命令的書寫。 (二) JOIN連接 在 FROM子句中使用 JOIN關(guān)鍵 字可以進(jìn)行指定的連接,格式為: FROM joined_table 其中 joined_talbe可以表示為: table_sourcejoin_typetab le_sourceONsearch_condition |table_sourceCROSS JOIN table_source |joined_table 參數(shù)說明如下: table_source為需連接的表。 join_type表示連接方式。 ON關(guān)鍵字用于指定連接條件 search_condition為連接條件。 CROSS JOIN指定兩個(gè)表交叉連接。 joined_table為連接表 其中 join_type格式為: [INNER | {LEFT | RIGHT | FULL}][OUTER][join_hint] JOIN 說明如下: INNER指定內(nèi)連接。合并兩個(gè) 表,返回滿足條件的行。 OUTER指定外連接。不但包含滿 足條件的行,還包含相應(yīng)表中的 所有行。 分三種情況: 1、 LEFT OUTER—左外連接。 結(jié)果表中除了包含滿足條件的 行,還包含左表的所有行。 2、 RIGHT OUTER—右外連接。結(jié)果表中除了包含滿足條件的 行,還包含右表的所有行。 3、 FULL OUTER—完全外連 接。結(jié)果表中除了包含滿足條件的 行,還包含左右兩個(gè)表所有行。 如果未指定連接方式,系統(tǒng)將默認(rèn)為 內(nèi)連
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1