




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、第5章 查詢 查詢就是將一個或多個數(shù)據(jù)表中滿足特定條件的數(shù)據(jù)檢索出來。查詢不僅可以基于數(shù)據(jù)表來創(chuàng)建,還可基于查詢來創(chuàng)建,同時,查詢不僅可以根據(jù)指定條件來進行數(shù)據(jù)的查找,還可對數(shù)據(jù)進行計算、統(tǒng)計、排序、篩選、分組、更新和刪除等各種操作。 第1頁/共96頁5.1 查詢概述 查詢是對數(shù)據(jù)庫表中的數(shù)據(jù)進行查找,產(chǎn)生動態(tài)表的過程。在Access中可以方便地創(chuàng)建查詢,在創(chuàng)建查詢的過程中需要定義查詢的內(nèi)容和規(guī)則,運行查詢時系統(tǒng)將在指定的數(shù)據(jù)表中查找滿足條件的記錄,組成一個類似數(shù)據(jù)表的動態(tài)表。第2頁/共96頁5.1.1 查詢的功能 1選擇字段 2選擇記錄 3編輯記錄 4計算 5建立新表 6建立基于查詢的報表和
2、窗體第3頁/共96頁5.1.2 查詢的類型 1選擇查詢 2交叉表查詢 3參數(shù)查詢 4操作查詢 5SQL查詢第4頁/共96頁1選擇查詢 選擇查詢是最常用的查詢類型,它是根據(jù)用戶定義的查詢內(nèi)容和規(guī)則,從一個或多個表中提取數(shù)據(jù)進行顯示。 在選擇查詢中,還可以對記錄進行分組,并對分組后的記錄進行總計、計數(shù)、平均及其他類型的計算等。 第5頁/共96頁2交叉表查詢 交叉表查詢是將某個數(shù)據(jù)表中的字段進行分組,一組作為查詢的行標題,一組作為查詢的列標題,然后在查詢的行與列交叉處顯示某個字段的統(tǒng)計值。交叉表查詢是利用表中的行或列來進行數(shù)據(jù)統(tǒng)計的。它的數(shù)據(jù)源是一張基礎(chǔ)表。 第6頁/共96頁3參數(shù)查詢 選擇查詢是在
3、建立查詢時就將查詢準則進行定義,條件是固定的。參數(shù)查詢是在運行查詢時利用對話框來提示用戶輸入查詢準則的一種查詢。參數(shù)查詢可以根據(jù)用戶每次輸入的值來確定當前的查詢條件,以滿足查詢的要求。 第7頁/共96頁4操作查詢 操作查詢的查詢內(nèi)容和規(guī)則的設(shè)定與選擇查詢相同,但它們有一個很大的不同是:選擇查詢是按照指定的內(nèi)容和條件查找滿足要求的數(shù)據(jù),將查找到的數(shù)據(jù)進行展示;而操作查詢是在查詢中對所有滿足條件的記錄進行編輯等操作,操作查詢會對基礎(chǔ)數(shù)據(jù)表產(chǎn)生影響或生成新的數(shù)據(jù)表,如生成表查詢,即會生成一個新的數(shù)據(jù)表,更新查詢,則會根據(jù)更新條件對原數(shù)據(jù)表中的數(shù)據(jù)進行修改。 第8頁/共96頁Access的操作查詢有如
4、下幾種: (1)生成表查詢 利用一個或多個表中的全部或部分數(shù)據(jù)生成一個新的數(shù)據(jù)表。生成表查詢通常用于重新組織數(shù)據(jù)或創(chuàng)建備份表等。 (2)刪除查詢 刪除查詢是將滿足條件的記錄從一個或多個數(shù)據(jù)表中刪除。此操作會將基礎(chǔ)數(shù)據(jù)表中的記錄刪除掉。 (3)更新查詢 更新查詢是對一個或多個表中的一組記錄進行修改的查詢。如對教師基本工資表中所有副教授的基本工資漲10%等,可利用更新查詢來實現(xiàn)。 (4)追加查詢 追加查詢是從一個或多個數(shù)據(jù)表中將滿足條件的記錄找出,并追加到另一個或多個數(shù)據(jù)表的尾部的操作。追加查詢可用于多個表的合并等。第9頁/共96頁5SQL查詢 SQL查詢就是利用SQL語句來實現(xiàn)的查詢。SQL查詢
5、將在下一章中詳細介紹,此章不再贅述。 第10頁/共96頁5.2 表達式 在Access中,表達式廣泛地應(yīng)用于表、查詢、窗體、報表、宏和事件過程等。表達式由運算對象、運算符和括號組成,運算對象包括常量、函數(shù)和對象標識符。Access中的對象標識符可以是數(shù)據(jù)表中的字段名稱、窗體、報表名稱、控件名稱、屬性名稱等。 第11頁/共96頁5.2.1 常量 常量分為系統(tǒng)常量和用戶自定義常量,系統(tǒng)常量如邏輯值True(真值)、False(假值)和Null(空值)。注意:空值不是空格或空字符串,也不是0,而是表示沒有值。用戶自定義常量又常稱為字面值,如數(shù)值“100”、字符串“ABCD”和日期“#08/8/8#”
6、等。 Access的常量類型包括數(shù)值型、字符型、日期型和邏輯型。 第12頁/共96頁1數(shù)值型 數(shù)值型常量包括整數(shù)和實數(shù)。整數(shù)如123;實數(shù),用來表示包含小數(shù)的數(shù)或超過整數(shù)示數(shù)范圍的數(shù),實數(shù)既可通過定點數(shù)來表示,也可用科學計數(shù)法進行表示。實數(shù)如12.3或0.123E2。 第13頁/共96頁2文本型 文本型常量由字母、漢字和數(shù)字等符號構(gòu)成的字符串。定義字符常量時需要使用定界符,Access中字符定界符有兩種形式:單引號( )、雙引號( )。如字符串ABC或ABC。 第14頁/共96頁3日期型 日期型常量即用來表示日期型數(shù)據(jù)。日期型常量用“#”作為定界符,如2008年7月18日,表示成常量即為#08
7、-7-18#,也可表示為#08-07-18#。在年月日之間的分隔符也可采用“/”作為分隔符,即#08/7/18#或#08/07/18#。 對于日期型常量,年份輸入為2位時,如果年份在0029范圍內(nèi),系統(tǒng)默認為20002029年;如果輸入的年份在3099之間,則系統(tǒng)默認為19301999年。如果要輸入的日期數(shù)據(jù)不在默認的范圍內(nèi),則應(yīng)輸入4位年份數(shù)據(jù)。 第15頁/共96頁4邏輯型 邏輯型常量有兩個值,真值和假值,用 True(或-1)表示真值,用False(或0)表示假值。系統(tǒng)不區(qū)分True和False的字母大小寫。 注意在數(shù)據(jù)表中輸入邏輯值時,如果需要輸入值,則應(yīng)輸入-1表示真,0表示假,不能輸
8、入True或False。 第16頁/共96頁5.2.2 Access常用函數(shù) 系統(tǒng)設(shè)計人員提供了上百個的函數(shù)以供用戶使用。在Access使用過程中,函數(shù)名稱不區(qū)分大小寫。根據(jù)函數(shù)的數(shù)據(jù)類型,我們將常用函數(shù)分為:數(shù)學型、文本型、日期時間型、邏輯型和轉(zhuǎn)換函數(shù)等。本節(jié),我們將對一部分常用函數(shù)進行介紹,如果需要更多的函數(shù),請查閱幫助或系統(tǒng)手冊。 第17頁/共96頁1數(shù)學函數(shù) 函數(shù)函數(shù)功能功能示例示例函數(shù)值函數(shù)值A(chǔ)bs(number)求絕對值求絕對值A(chǔ)bs(-12.5)12.5Exp(number)e指數(shù)指數(shù)Exp(2.5)12.1825Int(number)自變量為正時,返回整數(shù)部分,舍去自變量為正時
9、,返回整數(shù)部分,舍去小數(shù)部分;自變量為負時,返回不大小數(shù)部分;自變量為負時,返回不大于原值的整數(shù)于原值的整數(shù)Int(8.7)Int(-8.4)8-9Fix(number)無論自變量為正或負,均舍去小數(shù)部無論自變量為正或負,均舍去小數(shù)部分,返回整數(shù)分,返回整數(shù)Fix(8.7)Fix(-8.4)8-8Log(number)自然對數(shù)自然對數(shù)Log(3.5)1.253Rnd(number)產(chǎn)生產(chǎn)生01之間的隨機數(shù)。自變量可缺省之間的隨機數(shù)。自變量可缺省Rnd(2)01之間的隨機之間的隨機數(shù)數(shù)Sgn(number)符號函數(shù)。當自變量的值為正時,返符號函數(shù)。當自變量的值為正時,返回回1;自變量的值為;自變
10、量的值為0時,返回時,返回0;自變;自變量的值為負時,返回量的值為負時,返回-1Sgn(5)Sgn(0)Sgn(-5.6)10-1Sqr(number)平方根。自變量非負平方根。自變量非負Sqr(6)2.449Round(number,precision)四舍五入函數(shù)。第二個參數(shù)的取值為四舍五入函數(shù)。第二個參數(shù)的取值為非負整數(shù),用于確定所保留的小數(shù)位非負整數(shù),用于確定所保留的小數(shù)位數(shù)數(shù)Round(12.674,0)Round(12.674,2)1312.67第18頁/共96頁2字符函數(shù) 函數(shù)函數(shù)功能功能示例示例函數(shù)值函數(shù)值Left(stringexpr,n)求左子串函數(shù)。從表達式左側(cè)開始取求左
11、子串函數(shù)。從表達式左側(cè)開始取n個字符。個字符。每個漢字也作為每個漢字也作為1個字符個字符Left(北京北京,1)Left(Access,2)北北AcRight(stringexpr,n)求右子串函數(shù)。從表達式右側(cè)開始取求右子串函數(shù)。從表達式右側(cè)開始取n個字符。個字符。每個漢字也作為每個漢字也作為1個字符個字符Right(#2008-07-22#,3)Right(1234.56,3)-22.56Mid(stringexpr,m,n)求子串函數(shù)。從表達式中截取字符,求子串函數(shù)。從表達式中截取字符,m、n是數(shù)是數(shù)值表達式,由值表達式,由m值決定從表達式值的第幾個字值決定從表達式值的第幾個字符開始截取
12、,由符開始截取,由n值決定截取幾個字符。值決定截取幾個字符。n缺省,缺省,表示從第表示從第m個字符開始截取到尾部個字符開始截取到尾部Mid(中央財經(jīng)大學中央財經(jīng)大學,3,2)Mid(中央財經(jīng)大學中央財經(jīng)大學,3)財經(jīng)財經(jīng)財經(jīng)大學財經(jīng)大學Len(stringexpr)求字符個數(shù)。函數(shù)返回表達式值中的字符個數(shù)。求字符個數(shù)。函數(shù)返回表達式值中的字符個數(shù)。表達式可以是字符、數(shù)值、日期或邏輯型表達式可以是字符、數(shù)值、日期或邏輯型Len(#2008-7-22#)Len(中央財經(jīng)大學中央財經(jīng)大學)Len(True)1162UCase(stringexpr)將字符串中小寫字母轉(zhuǎn)換為大寫字母函數(shù)將字符串中小寫字
13、母轉(zhuǎn)換為大寫字母函數(shù)UCase(Access)UCase(學習學習abc)ACCESS學習學習ABCLCase(stringexpr)將字符串中大寫字母轉(zhuǎn)換為小寫字母函數(shù)將字符串中大寫字母轉(zhuǎn)換為小寫字母函數(shù)LCase(Access)accessSpace(number)生成空格函數(shù)。返回指定個數(shù)的空格符號生成空格函數(shù)。返回指定個數(shù)的空格符號+Space(2)+ InStr(C1,C2)查找子字符串函數(shù)。在查找子字符串函數(shù)。在C1中查找中查找C2的位置,即的位置,即C2是是C1的子串,則返回的子串,則返回C2在在C1中的起始位置,中的起始位置,否則返回否則返回0InStr(One Dream,D
14、r)InStr(One Dream,Dor)50Trim(stringexpr)刪除字符串首尾空格函數(shù)刪除字符串首尾空格函數(shù)Trim( AA+ BB )AA BBRTrim(stringexpr)刪除字符串尾部空格函數(shù)刪除字符串尾部空格函數(shù)RTrim( 數(shù)據(jù)庫數(shù)據(jù)庫 ) 數(shù)據(jù)庫數(shù)據(jù)庫LTrim(stringexpr)刪除字符串首部空格函數(shù)刪除字符串首部空格函數(shù)LTrim( 數(shù)據(jù)庫數(shù)據(jù)庫 )數(shù)據(jù)庫數(shù)據(jù)庫 String(n,stringexpr)字符重復函數(shù)。將字符串的第一個字符重復字符重復函數(shù)。將字符串的第一個字符重復n次,次,生成一個新字符串生成一個新字符串String(3,你好你好)你你你你
15、你你第19頁/共96頁3日期時間函數(shù) 函數(shù)函數(shù)功能功能示例示例函數(shù)值函數(shù)值Date( )日期函數(shù)。返回系統(tǒng)當前日期。無參函數(shù)日期函數(shù)。返回系統(tǒng)當前日期。無參函數(shù)Date()2008-07-22Time( )時間函數(shù)。返回系統(tǒng)當前時間。無參函數(shù)時間函數(shù)。返回系統(tǒng)當前時間。無參函數(shù)Time()下午下午 03:33:51Now( )日期時間函數(shù)。返回系統(tǒng)當前日期和時間,含年、月、日期時間函數(shù)。返回系統(tǒng)當前日期和時間,含年、月、日、時、分、秒。無參函數(shù)日、時、分、秒。無參函數(shù)Now()2008-07-22 下午下午 03:33:51Day(dateexpr)求日函數(shù)。返回日期表達式中的日值求日函數(shù)。返
16、回日期表達式中的日值Day(date()19Month(dateexpr)求月份函數(shù)。返回日期表達式中的月值求月份函數(shù)。返回日期表達式中的月值Month(date()3Year(dateexpr)求年份函數(shù)。返回日期表達式中的年值求年份函數(shù)。返回日期表達式中的年值Year(date()2009Weekday(dateexpr)求星期函數(shù)。返回日期表達式中的這一天是一周中的求星期函數(shù)。返回日期表達式中的這一天是一周中的第幾天。函數(shù)值取值范圍是第幾天。函數(shù)值取值范圍是17,系統(tǒng)默認星期日是,系統(tǒng)默認星期日是一周中的第一周中的第1天天Weekday(date()4Hour(timeexpr)求小時函
17、數(shù)。返回時間表達式中的小時值求小時函數(shù)。返回時間表達式中的小時值Hour(Time()15Minute(timeexpr)求分鐘函數(shù)。返回時間表達式中的分鐘值求分鐘函數(shù)。返回時間表達式中的分鐘值Minute(Time()33Second(timeexpr)求秒函數(shù)。返回時間表達式中的秒值求秒函數(shù)。返回時間表達式中的秒值Second(Time()51DateDiff(interval,date1,date2)求時間間隔函數(shù)。返回值為日期求時間間隔函數(shù)。返回值為日期2減去日期減去日期1的值。日的值。日期期2大于日期大于日期1,得正值,否則得負值。時間間隔參數(shù),得正值,否則得負值。時間間隔參數(shù)的不同
18、將確定返回值的不同含義。具體使用參見表的不同將確定返回值的不同含義。具體使用參見表5-4 所示所示第20頁/共96頁表5.4 DateDiff函數(shù)用法及示例 時間間隔參數(shù)時間間隔參數(shù)含義含義示例示例函數(shù)值函數(shù)值yyyy函數(shù)值為兩個日期相差的年份函數(shù)值為兩個日期相差的年份DateDiff(yyyy,#2008-07-22#,#2009-05-08#)1q函數(shù)值為兩個日期相差的季度函數(shù)值為兩個日期相差的季度DateDiff(q,#2008-07-22#,#2009-05-08#)3m函數(shù)值為兩個日期相差的月份函數(shù)值為兩個日期相差的月份DateDiff(m,#2008-07-22#,#2009-05
19、-08#)10y,d函數(shù)值為兩個日期相差的天數(shù),參數(shù)函數(shù)值為兩個日期相差的天數(shù),參數(shù)y和和d作作用相同用相同DateDiff(d,#2008-07-22#,#2009-05-08#)290w函數(shù)值為兩個日期相差的周數(shù)(滿函數(shù)值為兩個日期相差的周數(shù)(滿7天為一天為一周),當相差不足周),當相差不足7天時,返回天時,返回0DateDiff(w,#2008-07-22#,#2009-05-08#)DateDiff(w,#2008-07-22#,#2008-07-26#)410第21頁/共96頁4轉(zhuǎn)換函數(shù) 函數(shù)函數(shù)功能功能示例示例函數(shù)值函數(shù)值A(chǔ)sc(stringexpr)返回字符串第一個字符的返回字符
20、串第一個字符的ASCII碼碼Asc(ABC)65Chr(charcode)返回返回ASCII碼對應(yīng)的字符碼對應(yīng)的字符Char(66)BStr(number)將數(shù)值轉(zhuǎn)換為字符串。如果轉(zhuǎn)換結(jié)果是正將數(shù)值轉(zhuǎn)換為字符串。如果轉(zhuǎn)換結(jié)果是正數(shù),則字符串前添加一個空格。數(shù),則字符串前添加一個空格。Str(12345)Str(-1234) 12345 -12345 Val(stringexpr)將字符串轉(zhuǎn)換為數(shù)值型數(shù)據(jù)將字符串轉(zhuǎn)換為數(shù)值型數(shù)據(jù)Val(12.3A)Val(124d.3A)12.3124第22頁/共96頁5.2.3 表達式 表達式是由運算符和括號將運算對象連接起來的式子。常量和函數(shù)可以看成是最簡單
21、的表達式。 表達式通常根據(jù)運算符的不同將表達式分為算術(shù)表達式、字符表達式、關(guān)系表達式和邏輯表達式。 第23頁/共96頁1算術(shù)表達式 算術(shù)表達式是由算術(shù)運算符和數(shù)值型常量、數(shù)值型對象標識符、返回值為數(shù)值型數(shù)據(jù)的函數(shù)組成。它的運算結(jié)果仍為數(shù)值型數(shù)據(jù)。 運算符運算符功能功能表達式示例表達式示例表達式值表達式值-取負值,單目取負值,單目運算運算-42-42+-621652冪冪4216* 、/乘、除乘、除16*2/56.4整除整除16*256Mod模運算(求余模運算(求余數(shù))數(shù))87 Mod 987 Mod -9-87 Mod 9-87 Mod -966-6-6+ 、-加、減加、減8+6-122第24頁
22、/共96頁 在進行算術(shù)運算時,要根據(jù)運算符的優(yōu)先級來進行。算術(shù)運算符的優(yōu)先級順序如下:先括號,在同一括號內(nèi),單目運算的優(yōu)先級最高,然后先冪,再乘除,再模運算,后加減。 第25頁/共96頁 注意:在算術(shù)表達式中,當“+”號運算符的兩側(cè)的數(shù)據(jù)類型不一致,一側(cè)是數(shù)值型數(shù)據(jù),一側(cè)是數(shù)值字符串時,完成的是算術(shù)運算,當兩側(cè)均為數(shù)值符號串時,系統(tǒng)完成的是連接運算,而不是算術(shù)運算。 第26頁/共96頁 在使用算術(shù)運算符進行日期運算時,可進行的運算只有如兩種情況: (1)“+”運算:加號可用于一個日期與另一個整數(shù)(也可以是數(shù)字符號串或邏輯值)相加,得到一個新日期。 例如,表達式#2008-07-22#+56的值
23、為2008-09-16;表達式#2008-07-22#+True的值為2008-07-21;表達式#2008-07-22#+5的值為2008-07-27。 (2)“-”運算:減號可用于一個日期減去一個整數(shù)(也可以是數(shù)字符號串或邏輯值),得到一個新日期;減號也可用于兩個日期相減,差為這兩個日期相關(guān)的天數(shù)。 例如,表達式#2008-07-22#-#2008-5-1#的值為82,表達式#2008-07-22#-82的值為2008-05-01。 第27頁/共96頁2字符表達式 字符表達式是由字符運算符和字符型常量、字符型對象標識符、返回值為字符型數(shù)據(jù)的函數(shù)等構(gòu)成的表達式,表達式的值仍為字符型數(shù)據(jù)。 運
24、算符運算符功能功能表達式示例表達式示例表達式值表達式值+連接兩個字符型數(shù)據(jù)。連接兩個字符型數(shù)據(jù)。返回值為字符型數(shù)據(jù)返回值為字符型數(shù)據(jù)123+123總計:總計:+10*35.4123123# 錯誤錯誤&將兩個表達式的值進行將兩個表達式的值進行首尾相接。返回值為字首尾相接。返回值為字符型數(shù)據(jù)符型數(shù)據(jù)123 & 123123 & 123打印日期打印日期 & Date()總計:總計: & 10*35.4123123123123打印日期打印日期2008-07-22總計:總計:354第28頁/共96頁注意: (1)“+”運算符的兩個運算量都是字符表達式時才能進行連接
25、運算; (2)“&”運算符是將兩個表達式的值進行首尾相接。表達式的值可以是字符、數(shù)值、日期或邏輯型數(shù)據(jù)。如果表達式的值非字符型,則系統(tǒng)先將它轉(zhuǎn)換為字符,再進行連接運算??捎脕韺⒍鄠€表達式的值連接在一起。 第29頁/共96頁3關(guān)系表達式 關(guān)系表達式可由關(guān)系運算符和字符表達式、算術(shù)表達式組成,它的運算結(jié)果為邏輯值。關(guān)系運算時是運算符兩邊同類型的元素進行比較,關(guān)系成立,則表達式的值為真(True),否則為假(False)。 第30頁/共96頁表5.8 關(guān)系運算符功能及示例 運算符運算符功能功能表達式示例表達式示例表達式值表達式值120False大于大于aAFalse=等于等于abc=AbcT
26、rue 不等于不等于4 5True =小于等于小于等于3*3 =大于等于大于等于TrueFalseFalseIs Null左側(cè)的表達式值為空左側(cè)的表達式值為空 Is NullFalseIs Not Null左側(cè)的表達式值不為空左側(cè)的表達式值不為空 Is Not NullTrueIn判斷左側(cè)的表達式的值是否判斷左側(cè)的表達式的值是否在右側(cè)的值列表中在右側(cè)的值列表中中中 In (大大,中中,小小)Date() In (#2008-07-01#,#2008-07-31#)20 In (10,20,30)TrueFalseTrueBetween And判斷左側(cè)的表達式的值是否判斷左側(cè)的表達式的值是否在指
27、定的范圍內(nèi)。閉區(qū)間在指定的范圍內(nèi)。閉區(qū)間Date() Between #2008-07-01# And #2008-07-31#B Between a And z54 Between 60 And 78FalseTrueFalseLike判斷左側(cè)的表達式的值是否判斷左側(cè)的表達式的值是否符合右側(cè)指定的模式符。如符合右側(cè)指定的模式符。如果符合,返回真值,否則為果符合,返回真值,否則為假假abc Like abcde123 Like #2#x4e的的2 Like x#a-f?!4-7n1 Like NPT?False TrueTrueTrue第31頁/共96頁關(guān)系運算遵循如下規(guī)則: (1)數(shù)值型數(shù)據(jù)
28、按照數(shù)值大小比較; (2)字符型數(shù)據(jù)按照字符的ASCII碼比較,但字母不區(qū)分大小寫。漢字默認的按拼音順序進行比較; (3)日期型數(shù)據(jù),日期在前的小,在后的大; (4)邏輯型數(shù)據(jù),邏輯值False(0)大于True(-1); (5)Like在模式符中支持通配符。在模式符中可使用通配符“?”表示一個字符(字母、漢字或數(shù)字),通配符“*”表示零個或多個字符(字母、漢字或數(shù)字),通配符“#”表示一個數(shù)字。在模式符中使用中括號( )可為Like左側(cè)該位置的字符或數(shù)字限定一個范圍。如a-d,即表示a、b、c、d中的任何一個符號;若在中括號內(nèi)指定的字符或數(shù)字范圍前使用“!”號,則表示不在該范圍內(nèi),如!2-4
29、,即除2、3、4之外的任意數(shù)字; (6)在運算符Like前面可以使用邏輯運算符Not,表示相反的條件。 第32頁/共96頁4邏輯表達式 邏輯表達式可由邏輯運算符和邏輯型常量、邏輯型對象標識符、返回邏輯型數(shù)據(jù)的函數(shù)和關(guān)系運算符組成,其運算結(jié)果仍是邏輯值。 第33頁/共96頁表5.9 算術(shù)運算符功能及示例 運算符運算符功能功能表達式示例表達式示例表達式值表達式值Not非非Not 3+4=7FalseAnd與與Aa And 1+3*615 FalseOr或或Aa Or 1+3*615TrueXor異或異或Aa Xor 1+3*615TrueEqv邏輯等價邏輯等價Aa Eqv 1+3*615 Fals
30、e第34頁/共96頁注意: 邏輯表達式的運算優(yōu)先級從高到低是:括號,Not,And,Or,Xor,Eqv 表達式運算的規(guī)則是:在同一個表達式中,如果只有一種類型的運算,則按各自的優(yōu)先級進行運算;如果有兩種或兩種以上類型的運算時,則按照函數(shù)運算、算術(shù)運算、字符運算、關(guān)系運算、邏輯運算的順序來進行 第35頁/共96頁查詢準則練習1. 要將“選課成績”表中的成績?nèi)≌?,可以使用_。 A. Abs(成績) B. Int(成績) C. Srq(成績) D. Sgn(成績)2. 函數(shù)Sgn(-2)返回值是_。 A. 0 B. 1 C. -1 D. -2第36頁/共96頁3. 特殊運算符“IsNull”用于指
31、定一個字段為_。 A. 空值 B. 空字符串 C. 缺省值 D. 特殊值4. 返回一個值,該值是從字符表達式右側(cè)第1個字符開始截取若干個字符的函數(shù)為_。 A. Space B. String C. Left D. Right第37頁/共96頁5. 假設(shè)某數(shù)據(jù)庫表中有一個工作時間字段,查找15天前參加工作的記錄的準則是_。 A. =Data( )-15 B. Data( )-15 D. 18 or 18 and 18 not 18 like 21”5. 返回字符表達式中值的最小值的函數(shù)為_。 A. Avg B. Count C. Max D. Min第39頁/共96頁界面第40頁/共96頁查詢視
32、圖 Access 2003的每一個查詢主要有三個視圖: 設(shè)計視圖 數(shù)據(jù)表視圖 SQL視圖 三種視圖可以通過工具欄上的“視圖”按鈕下拉列表框中的視圖進行相互轉(zhuǎn)換。第41頁/共96頁1、數(shù)據(jù)表視圖“數(shù)據(jù)表”視圖用來顯示查詢的結(jié)果數(shù)據(jù)。第42頁/共96頁2、 設(shè)計視圖“設(shè)計”視圖用來對查詢設(shè)計進行修改。 第43頁/共96頁3、 SQL 視圖 “SQL”視圖用來顯示與“設(shè)計”視圖等效的SQL語句 。 第44頁/共96頁5.3 選擇查詢 創(chuàng)建查詢的方法一般有兩種:查詢向?qū)Ш汀霸O(shè)計”視圖。利用查詢向?qū)?,可?chuàng)建不帶條件的查詢。如果要創(chuàng)建帶條件的查詢,則必須要在查詢設(shè)計視圖中進行設(shè)置。 第45頁/共96頁條件
33、查詢示例查詢87年出生的女生或86年出生的男生的基本信息,并顯示學生的姓名,性別,出生日期和所在班級信息第46頁/共96頁表達式生成器 在查詢設(shè)計網(wǎng)格中,如果用戶對表達式的書寫規(guī)則不了解,對表達式中的操作符或要使用的函數(shù)不熟悉,可以在設(shè)計網(wǎng)格中的“條件”行單元格中啟動“表達式生成器” 第47頁/共96頁5.3.1 利用向?qū)?chuàng)建查詢 1基于單表的簡單查詢向?qū)?2基于多表的查詢向?qū)?第48頁/共96頁建立單表查詢 查詢學生的基本信息,并顯示學生的姓名、性別、出生日期和專業(yè)編號。 第49頁/共96頁第50頁/共96頁建立多表查詢 查詢學生的課程成績,并顯示學生的姓名、所選課程名稱和考試成績。(該查詢
34、涉及到3個表:“學生”表、“課程”表和“學生選課”表 )第51頁/共96頁第52頁/共96頁5.3.2 利用“設(shè)計”視圖創(chuàng)建查詢 1查詢“設(shè)計”視圖 2使用“設(shè)計”視圖創(chuàng)建查詢 3查詢設(shè)計網(wǎng)格的使用 第53頁/共96頁5.3.3 查詢屬性 1上限值 2記錄集類型 3輸出所有字段 4唯一值 第54頁/共96頁5.3.4 添加計算字段 在查詢中,我們會常常關(guān)心數(shù)據(jù)表中的某些信息,而不是數(shù)據(jù)表的某個字段的完全信息,這就需要采用添加計算字段的方式來實現(xiàn)。 例如,要查看學生基本信息表中所有學生的出生月份,最后顯示學生的姓名和出生月份,并按出生月份升序排列。 第55頁/共96頁添加計算字段 計算每個學生的
35、“編譯原理”課程的學期成績(學期成績平時成績0.3+考試成績0.7) 第56頁/共96頁5.3.5 總計查詢 在建立總計查詢時,人們更多的是關(guān)心記錄的統(tǒng)計結(jié)果,而不是具體的某個記錄。如學生的人數(shù)、各個學院的學生人數(shù)、選課學生的平均成績等。在查詢中,除了查詢滿足某些特定條件的記錄外,還常常需要對查詢的結(jié)果進行相應(yīng)的計算,如求最大值、最小值、計數(shù)、求均值等等。 總計查詢分為兩類:對數(shù)據(jù)表中的所有記錄進行總計查詢和對記錄進行分組后再分別進行總計查詢。注意:不能在總計查詢的結(jié)果中修改數(shù)據(jù)。 第57頁/共96頁1總計項 總計項總計項功能功能類別類別名稱名稱對應(yīng)函數(shù)對應(yīng)函數(shù)函數(shù)函數(shù)總計總計Sum求某字段(
36、或表達式)的累加項求某字段(或表達式)的累加項平均值平均值A(chǔ)vg求某字段(或表達式)的平均值求某字段(或表達式)的平均值最小值最小值Min求某字段(或表達式)的最小值求某字段(或表達式)的最小值最大值最大值Max求某字段(或表達式)的最大值求某字段(或表達式)的最大值計數(shù)計數(shù)Count對記錄計數(shù)對記錄計數(shù)標準差標準差StDev求某字段(或表達式)值的標準偏差求某字段(或表達式)值的標準偏差方差方差Var求某字段(或表達式)值的方差求某字段(或表達式)值的方差其他總計其他總計項項分組分組Group By定義要執(zhí)行計算的組定義要執(zhí)行計算的組第一條記錄第一條記錄First求在表或查詢中第一條記錄的字
37、段值求在表或查詢中第一條記錄的字段值最后一條記最后一條記錄錄Last求在表或查詢中最后一條記錄的字段值求在表或查詢中最后一條記錄的字段值表達式表達式Expression創(chuàng)建表達式中包含統(tǒng)計函數(shù)的計算字段創(chuàng)建表達式中包含統(tǒng)計函數(shù)的計算字段條件條件Where指定不用于分組的字段準則指定不用于分組的字段準則第58頁/共96頁2總計查詢 創(chuàng)建總計查詢的操作方式與普通的條件查詢相同,唯一的區(qū)別是需要設(shè)計總計行,即在查詢設(shè)計視圖下,單擊工具欄中的“總計”按鈕 ,在設(shè)計網(wǎng)格中添加“總計”行,在總計行中對總計的方式進行選擇。 第59頁/共96頁總計 查詢也可具有分析功能,總計功能的目的就是將數(shù)據(jù)表的記錄,予以
38、組化后,再加以計算,故總計功能相當重要。 讓總計功能出現(xiàn)在查詢設(shè)計視圖中:第60頁/共96頁計數(shù) 統(tǒng)計學生總?cè)藬?shù)。 第61頁/共96頁創(chuàng)建自定義查詢 計算“男”同學的平均年齡 。第62頁/共96頁3分組總計查詢 在查詢中,我們常常不僅需要對某一個字段進行統(tǒng)計,同時,還希望將記錄進行分組,再對分級后的值進行統(tǒng)計。這樣,在分組時,只需在查詢中添加一列分組列,對分組后的結(jié)果進行統(tǒng)計。 第63頁/共96頁平均值 統(tǒng)計“Access 數(shù)據(jù)庫應(yīng)用基礎(chǔ)”課程的“考試成績”平均分 。 第64頁/共96頁5.4 交叉表查詢 在Access中進行查詢時,可以根據(jù)條件查看滿足某些條件的記錄,也可以根據(jù)需求在查詢中進
39、行計算。但這兩方面的功能并不能很好地解決在數(shù)據(jù)查詢中的問題。如果我們需要查看每個學院的男女生各自的人數(shù),采用分組查詢時,每個學院均有男生和女生,則每個學院在查詢的結(jié)果中均會出現(xiàn)兩次,同樣,在同一性別中,所屬學院名稱也會重復出現(xiàn)。在Access中,系統(tǒng)提供了一種很好地查詢方式解決此類問題,即交叉表查詢。 第65頁/共96頁5.4.1 利用向?qū)?chuàng)建交叉表查詢 使用交叉表查詢向?qū)?chuàng)建查詢時要求查詢的數(shù)據(jù)源只能來源于一個表或一個查詢,如果查詢數(shù)據(jù)涉及到多表,則必須先將所有相關(guān)數(shù)據(jù)建立一個查詢,再用該查詢來創(chuàng)建交叉表。 第66頁/共96頁使用“交叉表查詢向?qū)А苯⒉樵?在“教師”表中統(tǒng)計各個系的教師人數(shù)
40、及其職稱分布情況 。第67頁/共96頁第68頁/共96頁5.4.2 利用“設(shè)計視圖”創(chuàng)建交叉表查詢 在交叉表查詢中,除了運用交叉表查詢向?qū)?chuàng)建交叉查詢外,還可利用查詢設(shè)計視圖創(chuàng)建交叉表查詢。 第69頁/共96頁使用設(shè)計視圖建立交叉表查詢 統(tǒng)計每個學生的選課情況 。第70頁/共96頁5.5 操作查詢 在對數(shù)據(jù)庫進行維護時,常常需要大量的修改數(shù)據(jù),如備份數(shù)據(jù)表、在數(shù)據(jù)表中刪除不符合條件的數(shù)據(jù)、對數(shù)據(jù)表中的數(shù)據(jù)進行批量修改等操作。Access提供了相應(yīng)的操作查詢,可以輕松地完成相應(yīng)的操作。 Access提供的操作查詢一共有4種:生成表查詢、刪除查詢、更新查詢、追加查詢。 第71頁/共96頁第72頁/
41、共96頁5.5.1 生成表查詢 查詢是一個動態(tài)數(shù)據(jù)集,關(guān)閉查詢,則動態(tài)數(shù)據(jù)集就不存在了,如果要將該數(shù)據(jù)集獨立保存?zhèn)浞?,或提交給其他的用戶,則可通過生成表查詢將動態(tài)數(shù)據(jù)集保存在一個新的數(shù)據(jù)表中。生成表查詢可以利用一個或多個表的數(shù)據(jù)來創(chuàng)建新數(shù)據(jù)表。 第73頁/共96頁生成表查詢 在“成績管理”數(shù)據(jù)庫中,根據(jù)“學生”表和“學生選課”表建立一個查詢,然后把查詢結(jié)果存儲為一個表。第74頁/共96頁第75頁/共96頁5.5.2 更新查詢 更新查詢可以根據(jù)條件對一個或多個數(shù)據(jù)表中的一批數(shù)據(jù)進行更新,大大提高了數(shù)據(jù)的維護效率和準確性。 第76頁/共96頁更新查詢 利用更新查詢將“平時成績”改為“平時成績*30%”,將“考試成績”改為“考試成績*70%” 。第77頁/共96頁5.5.3 追加查詢 追加查詢即是根據(jù)條件將一個
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 簡單的購銷合同樣本常用版5篇
- 醫(yī)療器械委托銷售協(xié)議書
- 碎石加工生產(chǎn)承包合同5篇
- 業(yè)務(wù)介紹居間合同
- 企業(yè)信用額度擔保合同
- 2025年貴陽貨運從業(yè)資格證考試試題及答案大全
- 公路工程管理與養(yǎng)護作業(yè)指導書
- 2025年三門峽c1貨運從業(yè)資格證考試題下載
- 2025年泉州貨車叢業(yè)資格證考試題
- 2025年簡單店面租賃合同7篇
- 現(xiàn)代物流基礎(chǔ)練習題庫及參考答案
- 華東師范大學《外國人文經(jīng)典(上)》2022-2023學年第一學期期末試卷
- 2024年互聯(lián)網(wǎng)金融客服培訓中的法律知識教學
- 高鐵隧道勞務(wù)分包合同范本(2篇)
- GB/T 44826-2024生物制造丙交酯
- 老舊小區(qū)電梯更新改造方案
- 某醫(yī)院食堂餐飲服務(wù)投標方案(技術(shù)方案)
- 中小河治理工程監(jiān)理規(guī)劃(城鄉(xiāng))
- 多發(fā)性硬化診斷與治療指南(2023版)解讀
- 2024新版(外研版三起joinin)三年級英語上冊單詞帶音標
- 工程質(zhì)量控制流程圖
評論
0/150
提交評論