ACCESS數(shù)據(jù)庫查詢條件示例1_第1頁
ACCESS數(shù)據(jù)庫查詢條件示例1_第2頁
ACCESS數(shù)據(jù)庫查詢條件示例1_第3頁
ACCESS數(shù)據(jù)庫查詢條件示例1_第4頁
ACCESS數(shù)據(jù)庫查詢條件示例1_第5頁
已閱讀5頁,還剩18頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第頁查詢條件例如全部顯示查詢條件是一種規(guī)那么,用來標識要包含在查詢結(jié)果中的記錄。并非所有查詢都必須包含條件,但是如果您沒有興趣查看存儲在根本記錄源中的所有記錄,那么在設計查詢時必須在其中添加條件。本主題列出了多個查詢條件例如。本文假設您熟悉如何設計簡單的選擇查詢。假設要了解更多有關創(chuàng)立選擇查詢的內(nèi)容,請參閱文章創(chuàng)立簡單的選擇查詢。本主題內(nèi)容查詢條件簡介文本、備注和超鏈接字段的條件數(shù)字、貨幣和自動編號字段的條件日期/時間字段的條件其他字段的條件查詢條件簡介條件類似于公式-它是可能由字段引用、運算符和常量組成的字符串。在MicrosoftOfficeAccess2019中,查詢條件也稱為表達式。

下表顯示了某些例如條件并說明它們?nèi)绾喂ぷ?。條件說明>25and<50此條件適用于數(shù)字字段,如“價格〞或“庫存量〞。它僅包含這樣的記錄:其中“價格〞或“庫存量〞字段包含大于25且小于50的值。DateDiff("yyyy",[出生日期],Date())>30此條件適用于日期/時間字段,如“出生日期〞。只有某人的出生日期與今天的日期之間相差的年數(shù)大于30的記錄才會包含在查詢結(jié)果中。IsNull此條件可用于任何類型的字段,以顯示字段值為Null的記錄。如您所見,根據(jù)條件所應用到的字段的數(shù)據(jù)類型以及您的具體要求,各個條件之間看上去可能有很大的不同。某些條件很簡單,只使用根本運算符和常量。而有些條件很復雜,不僅使用函數(shù)、特殊運算符,還包含字段引用。本主題按數(shù)據(jù)類型列出了多個常用條件。如果本主題中提供的例如不能滿足您的特定需求,那么您可能需要自己編寫條件。為此,您必須首先熟悉函數(shù)、運算符、特殊字符的完整列表以及用于引用字段和文字的表達式的語法。有關詳細信息可以在請參閱一節(jié)列出的文章中找到。在這里,您將了解在哪里添加條件以及如何添加。假設要向查詢添加條件,必須在設計視圖中翻開查詢。然后標識要為其指定條件的字段。如果設計網(wǎng)格中尚無該字段,那么您必須自行添加,方法是將它從查詢設計窗口拖動到字段網(wǎng)格,或者雙擊該字段〔雙擊字段會自動將它添加到字段網(wǎng)格中的下一個空列〕。最后,在“條件〞行中鍵入條件。您在“條件〞行中為不同字段指定的條件使用AND運算符組合在一起。換言之,在“城市〞和“出生日期〞字段中指定的條件將如下方式進展解釋:城市="芝加哥"AND出生日期<DateAdd("yyyy",-40,Date())

“城市〞和“出生日期〞字段都包括條件。

只有“城市〞字段的值為“芝加哥〞的記錄將滿足此條件。

只有至少為40歲的那些人的記錄將滿足此條件。

只有同時滿足這兩個條件的記錄將包括在結(jié)果中。如果您只希望滿足這兩個條件中的一個條件該怎么辦呢?換言之,如果您有二選一條件,該如何輸入它們呢?如果您有二選一條件〔即兩組獨立的條件,只要滿足其中一組即可〕,那么可以同時使用設計網(wǎng)格中的“條件〞和“或〞行。

“城市〞條件是在“條件〞行中指定的。

“出生日期〞條件是在“或〞行中指定的?!皸l件〞和“或〞行中指定的條件是使用OR運算符組合的,如下所示:城市="芝加哥"OR出生日期<DateAdd("yyyy",-40,Date())如果您需要指定更多備選條件,請使用“或〞行下面的行。在繼續(xù)這些例如之前,請注意以下幾點:如果條件是臨時的或者經(jīng)常更改,那么可以篩選查詢結(jié)果,而不是頻繁修改查詢條件。篩選器是更改查詢結(jié)果但不更改查詢設計的臨時條件。有關篩選器的詳細信息,請參閱文章篩選:限制視圖中的記錄數(shù)。如果條件字段不變,但是您感興趣的值頻繁更改,那么可以創(chuàng)立參數(shù)查詢。參數(shù)查詢會提示用戶提供字段值,然后使用這些值創(chuàng)立查詢條件。有關參數(shù)查詢的詳細信息,請參閱文章在查詢和報表中使用參數(shù)。文本、備注和超鏈接字段的條件下面的例如針對某個查詢中的“國家/地區(qū)〞字段,該查詢基于一個存儲聯(lián)系人信息的表。條件是在設計網(wǎng)格中該字段的“條件〞行中指定的。為超鏈接字段指定的條件默認情況下應用于該字段值的顯示文本局部。假設要為該值的目標統(tǒng)一資源定位器(URL)局部指定條件,請使用“HyperlinkPart〞表達式。此表達式的語法如下:HyperlinkPart([Table1].[Field1],1)="",其中Table1是包含超鏈接字段的表的名稱,F(xiàn)ield1是超鏈接字段,是要匹配的URL。假設要包含滿足下面條件的記錄使用此條件查詢結(jié)果完全匹配一個值,如“China〞"China"返回“國家/地區(qū)〞字段設置為“China〞的記錄。不匹配某個值,如“Mexico〞Not"Mexico"返回“國家/地區(qū)〞字段設置為“Mexico〞以外的國家/地區(qū)的記錄。以指定的字符串開頭,如ULikeU*返回名稱以“U〞開頭的所有國家/地區(qū)〔如UK、USA等等〕的記錄。

注釋

當在表達式中使用星號(*)時,它表示任意字符串-它也稱為通配符。有關此類字符的列表,請參閱文章Access通配符參考。

不以指定字符串開頭,如UNotLikeU*返回名稱以“U〞以外的字符開頭的所有國家/地區(qū)的記錄。包含指定字符串,如“Korea〞Like"*Korea*"返回包含字符串“Korea〞的所有國家/地區(qū)的記錄。不包含指定字符串,如“Korea〞NotLike"*Korea*"返回不包含字符串“Korea〞的所有國家/地區(qū)的記錄。以指定字符串結(jié)尾,如“ina〞Like"*ina"返回名稱以“ina〞結(jié)尾的所有國家/地區(qū)〔如China和Argentina〕的記錄。不以指定字符串結(jié)尾,如“ina〞NotLike"*ina"返回以“ina〞結(jié)尾的所有國家/地區(qū)〔如China和Argentina〕之外的記錄。包含Null值〔即缺少值〕IsNull返回該字段中沒有值的記錄。不包含Null值IsNotNull返回該字段中不缺少值的記錄。包含零長度字符串""〔一對引號〕返回該字段設置為空〔不是Null〕值的記錄。例如,提供應另一個部門的銷售記錄可能在“國家地區(qū)〞字段中包含空值。不包含零長度字符串Not""返回“國家/地區(qū)〞字段含有非空值的記錄。包含Null值或零長度字符串""OrIsNull返回該字段中沒有值或者該字段設置為空值的記錄。不為空IsNotNullAndNot""返回“國家/地區(qū)〞字段含有非空、非Null值的記錄。按字母順序排在某個值〔如Mexico〕后面>="Mexico"返回從Mexico開場一直到字母表完畢的所有國家/地區(qū)的記錄。在指定范圍內(nèi),如A到DLike"[A-D]*"返回名稱以字母“A〞到“D〞開頭的國家/地區(qū)的記錄。匹配兩個值中的任一值,如USA或UK"USA"Or"UK"返回對應USA和UK的記錄。包含值列表中的任一值In("France","China","Germany","Japan")返回對應列表中指定的所有國家/地區(qū)的記錄。在字段值的特定位置包含某些字符Right([CountryRegion],1)="y"返回最后一個字母為“y〞的所有國家/地區(qū)的記錄。滿足長度要求Len([CountryRegion])>10返回名稱長度大于10個字符的國家/地區(qū)的記錄。匹配特定模式Like"Chi??"返回名稱為五個字符長并且前三個字符為“Chi〞的國家/地區(qū)〔如China和Chile〕的記錄。

注釋

字符?和_在表達式中使用時表示單個字符,這些字符也稱為通配符。字符_不能在包含?字符的表達式中使用,也不能在包含*通配符的表達式中使用。您可以在同時包含%通配符的表達式中使用通配符_。

數(shù)字、貨幣和自動編號字段的條件下面的例如針對某個查詢中的“單價〞字段,該查詢基于一個存儲產(chǎn)品信息的表。條件是在查詢設計網(wǎng)格中該字段的“條件〞行中指定的。假設要包含滿足下面條件的記錄使用此條件查詢結(jié)果完全匹配一個值,如100100返回產(chǎn)品單價為¥100的記錄。不匹配某個值,如1000Not1000返回產(chǎn)品單價不為¥1000的記錄。包含小于某個值〔如100〕的值<100

<=100返回單價低于¥100(<100)的記錄。第二個表達式(<=100)顯示單擊低于或等于¥100的記錄。包含大于某個值〔如99.99〕的值

返回單價高于¥99.99(>99.99)的記錄。第二個表達式顯示單擊高于或等于¥99.99的記錄。包含兩個值〔如20或25〕中的任一值20or25返回單價為¥20或¥25的記錄。包含某個值范圍之內(nèi)的值

-或-

Between50and100返回單價介于〔但不包括〕¥49.99和¥99.99之間的記錄。包含某個范圍之外的值<50or>100返回單價不在¥50和¥100之間的記錄。包含多個特定值之一In(20,25,30)返回單價為¥20、¥25或¥30的記錄。包含以指定數(shù)字結(jié)尾的值Like"*4.99"返回單價以“4.99〞結(jié)尾〔如¥4.99、¥14.99、¥24.99等等〕的記錄。

注釋

字符*和%在表達式中使用時表示任意數(shù)量的字符,這些字符也稱為通配符。字符%不能在包含*字符的表達式中使用,也不能在包含?通配符的表達式中使用。您可以在同時包含_通配符的表達式中使用通配符%。

包含Null值〔即缺少值〕IsNull返回“單價〞字段中未輸入值的記錄。包含非Null值IsNotNull返回“單價〞字段中不缺少值的記錄。日期/時間字段的條件下面的例如針對某個查詢中的“訂購日期〞字段,該查詢基于一個存儲訂單信息的表。條件是在查詢設計網(wǎng)格中該字段的“條件〞行中指定的。假設要包含滿足下面條件的記錄使用此條件查詢結(jié)果完全匹配一個值,如2/2/2019#2/2/2019#返回交易發(fā)生在2019年2月2日的記錄。請記住在日期值兩邊括以#字符,以使Access可區(qū)分日期值和文本字符串。不匹配某個值,如2/2/2019Not#2/2/2019#返回交易不是發(fā)生在2019年2月3日的記錄。包含某個特定日期〔如2/2/2019〕之前的值<#2/2/2019#返回交易發(fā)生在2019年2月2日之前的記錄。假設要查看發(fā)生在該日期或該日期之前的交易,請使用<=運算符而不是<運算符。包含某個特定日期〔如2/2/2019〕之后的值>#2/2/2019#返回交易發(fā)生在2019年2月2日之后的記錄。假設要查看交易發(fā)生在該日期或該日期之后的記錄,請使用>=運算符而不是>運算符。包含某個日期范圍之內(nèi)的值>#2/2/2019#and<#2/4/2019#返回交易發(fā)生在2019年2月2日和2019年2月4日之間的記錄。也可以使用Between運算符篩選一定范圍的值。例如,Between#2/2/2019#and#2/4/2019#與>#2/2/2019#and<#2/4/2019#一樣。包含某個范圍之外的值<#2/2/2019#or>#2/4/2019#返回交易發(fā)生在2019年2月2日之前或2019年2月4日之后的記錄。包含兩個值中的任一值,如2/2/2019或2/3/2019#2/2/2019#or#2/3/2019#返回交易發(fā)生在2019年2月2日或2019年2月3日的記錄。包含多個值之一In(#2/1/2019#,#3/1/2019#,#4/1/2019#)返回交易發(fā)生在2019年2月1日、2019年3月1日或2019年4月1日的記錄。包含特定月份〔與年份無關〕內(nèi)的某個日期,如12月DatePart("m",[銷售日期])=12返回交易發(fā)生在任何一年的12月的記錄。包含特定季度〔與年份無關〕內(nèi)的某個日期,如一季度DatePart("q",[銷售日期])=1返回交易發(fā)生在任一年的第一季度的記錄。包含今天的日期Date()返回交易發(fā)生在當天的記錄。如果當天日期為2/2/2019,那么您將看到“訂購日期〞字段設置為2019年2月2日的記錄。包含昨天的日期Date()-1返回交易發(fā)生在當天的前一天的記錄。如果當天日期為2/2/2019,那么您將看到2019年2月1日的記錄。包含明天的日期Date()+1返回交易發(fā)生在當天的后一天的記錄。如果當天日期為2/2/2019,那么您將看到2019年2月3日的記錄。包含當前星期內(nèi)的日期DatePart("ww",[銷售日期])=DatePart("ww",Date())andYear([銷售日期])=Year(Date())返回交易發(fā)生在當前星期內(nèi)的記錄。一個星期從星期日開場到星期六完畢。包含上一星期內(nèi)的日期Year([銷售日期])*53+DatePart("ww",[銷售日期])=Year(Date())*53+DatePart("ww",Date())-1返回交易發(fā)生在上個星期的記錄。一個星期從星期日開場到星期六完畢。包含下個星期內(nèi)的日期Year([銷售日期])*53+DatePart("ww",[銷售日期])=Year(Date())*53+DatePart("ww",Date())+1返回交易將在下個星期發(fā)生的記錄。一個星期從星期日開場到星期六完畢。包含前7天內(nèi)的日期BetweenDate()andDate()-6返回交易發(fā)生在前7天的記錄。如果當天日期為2/2/2019,那么您將看到從2019年1月24日到2019年2月2日這段時間的記錄。包含屬于當前月的日期Year([銷售日期])=Year(Now())AndMonth([銷售日期])=Month(Now())返回當前月的記錄。如果當天日期為2/2/2019,那么您將看到2019年2月的記錄。包含屬于上個月的日期Year([銷售日期])*12+DatePart("m",[銷售日期])=Year(Date())*12+DatePart("m",Date())-1返回上個月的記錄。如果當天日期為2/2/2019,那么您將看到2019年1月的記錄。包含屬于下個月的日期Year([銷售日期])*12+DatePart("m",[銷售日期])=Year(Date())*12+DatePart("m",Date())+1返回下個月的記錄。如果當天日期為2/2/2019,那么您將看到2019年3月的記錄。包含前30天或31天內(nèi)的日期BetweenDate()AndDateAdd("M",-1,Date())一個月的銷售記錄。如果當天日期為2/2/2019,那么您將看到從2019年1月2日到2019年2月2日這段時間的記錄包含屬于當前季度的日期Year([銷售日期])=Year(Now())AndDatePart("q",Date())=DatePart("q",Now())返回當前季度的記錄。如果當天日期為2/2/2019,那么您將看到2019年一季度的記錄。包含屬于上個季度的日期Year([銷售日期])*4+DatePart("q",[銷售日期])=Year(Date())*4+DatePart("q",Date())-1返回上個季度的記錄。如果當天日期為2/2/2019,那么您將看到2019年最后一個季度的記錄。包含屬于下個季度的日期Year([銷售日期])*4+DatePart("q",[銷售日期])=Year(Date())*4+DatePart("q",Date())+1返回下個季度的記錄。如果當天日期為2/2/2019,那么您將看到2019年二季度的記錄。包含當年內(nèi)的日期Year([銷售日期])=Year(Date())返回當年的記錄。如果當天日期為2/2/2019,那么您將看到2019年的記錄。包含屬于去年的日期Year([銷售日期])=Year(Date())-1返回交易發(fā)生在去年的記錄。如果當天日期為2/2/2019,那么您將看到2019年的記錄。包含屬于明年的日期Year([銷售日期])=Year(Date())+1返回交易日期為明年的記錄。如果當天日期為2/2/2019,那么您將看到2019年的記錄。包含介于1月1日和今天之間的日期〔當年到今天為止的記錄〕Year([銷售日期])=Year(Date())andMonth([銷售日期])<=Month(Date())andDay([銷售日期])<=Day(Date())返回交易日期介于當年1月1日到當天之間的記錄。如果當天日期為2/2/2019,那么您將看到從2019年1月1日到2019年2月2日這段時間的記錄。包含發(fā)生在過去的日期<Date()返回交易發(fā)生在當天之前的記錄。包含發(fā)生在將來的日期>Date()返回交易將在當天之后發(fā)生的記錄。篩選Null值〔即缺少值〕IsNull返回缺少交易日期的記錄。篩選非Null值IsNotNull返回交易日期的記錄。其他字段的條件“是/否〞字段

在“條件〞行中,鍵入是以包含復選框已選中的記錄。鍵入“否〞以包含復選框未選中的記錄。附件

在“條件〞行中,鍵入IsNull以包含不含任何附件的記錄。鍵入IsNotNull以包含含有附件的記錄?!安殚啫曌侄?/p>

有兩種類型的“查閱〞字段:在現(xiàn)有數(shù)據(jù)源中查閱值的“查閱〞字段〔使用外鍵〕以及基于創(chuàng)立“查閱〞字段時指定的值列表的“查閱〞字段?;谥付ㄖ档牧斜淼摹安?/p>

溫馨提示

  • 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論