尋找具有最近或最舊日期的記錄

附註: 我們想要以您的語言,用最快的速度為您提供最新的說明內容。 本頁面是經由自動翻譯而成,因此文中可能有文法錯誤或不準確之處。 讓這些內容對您有所幫助是我們的目的。 希望您能在本頁底部告訴我們這項資訊是否有幫助。 此為英文文章出處,以供參考。

本文說明如何使用臨界數值查詢來尋找最近或最早日期一組記錄中。 您可以使用此類型查詢回答商務問題,例如當客戶上次訂單各種傳回的資訊。

您想要做什麼?

了解如何頂端查詢中處理日期的值

尋找最近或最早日期

尋找類別或群組中的最新或最早日期的記錄

尋找最新和最早日期

了解如何頂端查詢中處理日期的值

當您需要找出包含在表格或記錄群組的最新或最早日期的記錄時,您可以使用臨界數值查詢。 您然後可以使用資料,例如回答商務問題的數種:

  • 何時員工上次做銷售? 向 answer 可協助您找出最生產力或最有效率的員工。

  • 何時沒有客戶上次訂單? 如果客戶有不放在指定期間內的時間順序,您可能要移至非作用中的清單的客戶。

  • 下一步的生日或下一個 n 生日誰?

建立及使用臨界數值查詢規則

您建立臨界數值查詢先建立選取查詢。 根據您想要的結果,您將排序順序套用至查詢,或您轉換合計查詢的查詢。 如果您將轉換查詢,然後會使用彙總函數,例如 [最大最小值,若要傳回的最高或最低值,或第一個最後一個傳回的最早或最晚日期。 您需要尋找分成一組的群組或類別的資料時,才使用合計查詢和彙總函數。 例如,假設您要尋找針對給定日期貴公司的運作各城市的銷售數字。 在該情況下,城市成為 (您需要每個城市找到的資料) 的類別,因此您使用合計查詢。

繼續進行時,請記住,無論為查詢類型,請在查詢必須使用包含描述性的資料,例如客戶名稱,以及包含您想要尋找的日期值的欄位的欄位。 此外,值都必須位於設為 [日期/時間] 欄位中的日期資料類型。 本文將說明查詢失敗,如果您嘗試執行文字欄位中的日期值。 此外,如果您想要使用合計查詢,您資料的欄位必須包含類別的資訊,例如國家/地區碼或城市] 欄位。

臨界數值查詢和篩選之間進行選擇

若要判斷您是否應該建立臨界數值查詢,或套用篩選,請選擇下列其中一項:

  • 如果您想要在欄位中,傳回具有最近或最新日期的記錄,而且您不知道確切日期值,或它們不是很重要,您會建立臨界數值查詢。

  • 如果您想要傳回日期相符的位置的所有記錄之前,或晚於特定日期、 使用篩選。 例如,若要查看之日期的年 4 月與年 7 月的銷售額,您套用篩選。 除了本主題是完整討論的篩選。

    如需有關建立和使用篩選的詳細資訊,請參閱套用篩選,以檢視選取 [在 Access 資料庫中的記錄

頁面頂端

尋找最近或最早日期

本節中的步驟說明如何建立基本臨界數值查詢的使用排序順序,以及更多進階使用運算式,以及其他準則的查詢。 第一節示範如何建立臨界數值查詢的基本步驟,第二個區段會說明如何新增準則以尋找下一步的幾個員工生日。 步驟會使用下列範例資料表中的資料。

姓氏

名字

地址

城市

國家/地區

出生日期

雇用日期

孫哲翰

沙東

1 Main St.

New York

USA

05-二月-1968 年,用

1994 年 6 月月 10 日

Heloo

Waleed

52 1st St.

Boston

USA

22-5-1957

1996 年 11 月月 22 日

盧珮佳

Guido

3122 75th Ave. S.W.

Seattle

USA

1960 年 11 月 11 日

2000-3 月 11 日

Jean-francois Philippe

1 Contoso Blvd.

London

UK

22-三月-1964

1998 年 6 月 22 日

價格

Julian

Calle Smith 2

Mexico City

墨西哥

05-6 月-1972

2002 年 1 月 05 日

Hughes

Christine

3122 75th 聖 s。

Seattle

USA

從 1 月 23 1970

1999 年 4 月 23 日

Riley

Steve

67 Big St.

Tampa

USA

14-四月-1964

2004 年 10 月 14 日

Birkby

Dana

2 nosey Pkwy

Portland

USA

29-Oct-1959

1997 年 3 月月 29 日

如果您想要您可以此範例手動輸入資料至新的資料表,或您可以將這個範例資料表複製到一個試算表程式,例如 Microsoft Excel 中,,然後使用 Access 匯入資料表結果工作表。

建立基本的臨界數值查詢

  1. 在 [建立] 索引標籤上,按一下 [查詢] 群組中的 [查詢設計]。

    [顯示資料表] 對話方塊隨即出現。

  2. 在對話方塊中,按一下您想要在查詢中使用,按一下 [新增至資料表置於的上半部的設計工具中,然後再按一下 [關閉資料表。

    -或-

    按兩下資料表,然後再按一下 [關閉]。

    如果您使用所列的範例資料前一節,將 [員工] 資料表新增至查詢。

  3. 新增您想要使用您在查詢設計格線中的欄位。 您可以按兩下每個欄位,或拖放在 [欄位] 列中的空白儲存格上的每個欄位。

    如果您使用範例資料表,請新增名字、 姓氏及出生日期欄位。

  4. 在欄位中包含您頂端或底端的值 ([出生日期欄位中,如果您使用範例資料表),按一下 [排序] 資料列,然後選取 [遞增] 或 [遞減排序]

    遞減排序順序,傳回的最新的日期,並遞增排序傳回的最早日期。

    重要: 您必須設定的值排序的列中僅包含日期的欄位。 如果您指定的另一個欄位排序順序,查詢將不會傳回您想要的結果。

  5. [設計] 索引標籤的 [查詢設定] 群組中,按一下向下箭號的旁邊所有在前面的值清單),請輸入您想要查看,或從清單中選取一個選項的記錄數目。

  6. 按一下 [執行 按鈕圖像 執行查詢並在資料工作表檢視中顯示結果。

  7. 儲存查詢並將它維持開啟使用中的下一個步驟。

您可以看到這種臨界數值查詢可以回答基本的問題,例如誰是最舊或公司中的最新人員。 接下來的步驟說明如何使用運算式,以及其他準則新增至查詢的強大功能與彈性。 顯示下一個步驟中傳回接下來三個員工生日的準則。

新增準則至查詢

附註: 這些步驟是假設您會使用上一節所述的查詢。

  1. 切換您在先前的步驟,在 [設計檢視中建立的查詢。

  2. 在查詢設計格線中,在欄右邊的 [出生日期] 欄中,複製及貼上或輸入這個運算式:運算式 1: DatePart ("m",[出生日期])。 然後按一下 [執行]。

    DatePart函數擷取的出生日期欄位的月份部分。

  3. 切換到 [設計檢視]。

  4. 右邊的第一個運算式,貼上或輸入這個運算式:運算式 2: DatePart ("d",[出生日期])。 然後按一下 [執行]。

    在此情況下, DatePart函數擷取的出生日期欄位的日期部分。

  5. 切換到 [設計檢視]。

  6. 清除核取方塊顯示列中的每個您剛剛輸入的兩個運算式按一下每個運算式,[排序] 資料列,然後選取 [遞增]

  7. 按一下 [執行]

  8. 或者,您可以指定準則限制查詢的範圍。 當您指定的準則時,查詢會排序最符合準則的記錄,其識別的頂端或底部欄位值的排序清單中。

    若要繼續的範例資料,請切換至 [設計] 檢視。 然後,在 [準則] 資料列的 [出生日期] 欄中輸入下列運算式:

    月 ([出生日期]) > Month(Date()) 或月 ([出生日期]) = Month(Date()) 和天 ([出生 Date])>Day(Date())

    這個運算式會下列動作: Month ([出生日期]) > Month(Date())部分會檢查每位員工的出生日期,請參閱是否它落在未來的月份,然後如果為 true,請在查詢中包含這些記錄。 月 ([出生日期]) = Month(Date()) 和 Day([Birth Date])>Day(Date()) portion of the expression checks the birth dates that occur in the current month to see if the birthday falls on or after the current day. 如果條件為 true,函數會在查詢中包含這些記錄。 摘要總結: 這個運算式會忽略任何記錄位置生日介於年 1 月 1 並執行查詢的日期。

    若要查看更多的查詢準則運算式範例,請參閱查詢準則範例一文。

  9. [設計] 索引標籤的 [查詢設定] 群組中,按一下向下箭號的旁邊所有在前面的值清單),請輸入您想要查看,或從清單中選取一個選項的記錄數目。

    若要查看接下來三個生日,輸入3

  10. 按一下 [執行 按鈕圖像 執行查詢並在資料工作表檢視中顯示結果。

如果您看到更多比您指定的記錄

如果您的資料包含共用的日期值的多筆記錄,臨界數值查詢可能會傳回超過您指定的資料。 例如,您可以設計臨界數值查詢來擷取三個員工記錄,但查詢會傳回四筆記錄因為"Wilson"和"Edwards 「 共用生日下, 表所示。

姓氏

BirthDate

Berka

9/26/1968 年,用

傑克森

10/2/1970

Edwards

10/15/1965

Wilson

10/15/1969

如果您看到較少比您指定的記錄

假設您設計查詢的欄位中,傳回最前面或最五筆記錄,但是查詢會傳回只三筆記錄。 規則,請為您解決該類型的問題設計檢視] 中開啟查詢並檢視在設計格線中的資料行的 [準則] 列。

如需詳細了準則的詳細資訊,請參閱查詢準則範例一文。

如果您看到 [重複的記錄

如果臨界數值查詢會傳回重複的項目,基礎資料表包含重複的記錄,或是記錄看起來是因為查詢不包含可區別的記錄欄位的重複項目。 例如下, 表顯示結果的查詢會傳回 5 個出貨訂單最近,以及處理交易銷售人員的名稱。

ShippedDate

銷售人員

2004/11/12

Freitag

2004/11/12

Cajhen

2004/10/12

Delgado

2004/10/12

Delgado

2004/10/12

Freitag

第三筆和第四個記錄似乎重複項目,但是也可能 Delgado 銷售人員處理的同一天日出貨的兩個不同的順序。

根據您的需求,您可以執行下列一項以避免傳回重複的記錄。 您可以變更查詢的設計,將會協助區分記錄,例如訂單編號] 和 [客戶編號欄位的欄位。 或者,如果不足以查看其中重複的記錄,您可以查詢的唯一值屬性設定為[是]以顯示筆相異的記錄。 若要設定此屬性,在查詢設計] 檢視中,以滑鼠右鍵按一下上半部查詢設計工具中的空白區域的任何位置,然後按一下捷徑功能表上的 [內容 在查詢屬性表,找出 [唯一值屬性,並將它設定為[是]

如需有關處理重複記錄的詳細資訊,請參閱尋找、 隱藏或消除重複資料

頁面頂端

尋找類別或群組中的最新或最早日期的記錄

您可以使用合計查詢來尋找記錄分成群組或類別的最早或最晚日期。 合計查詢是用來計算指定欄位的值的彙總函數,例如MinMaxSum第一個最後一個選取查詢。

本節中的步驟假設您執行的事件管理商務 — 一點臨時、 光源、 承辦宴席類,和大型函式的其他方面。 此外,您管理的事件會分成數個類別,例如產品啟動、 街道 fairs,以及 concerts。 本節中的步驟說明如何回答常見的問題: 當是下一個事件,依類別? 換句話說,時,為下一步的產品啟動、 下一步音樂會,等等。

當您繼續,請記住下列: 根據預設,只包含群組或類別資料欄位,並包含日期的欄位,可以包含您在這裡建立合計查詢的類型。 您不能包含其他欄位,說明的類別,例如客戶或供應商名稱中的項目。 不過,您可以建立包含描述性資料的欄位與結合合計查詢的第二個查詢。 稍後在本節中的步驟說明如何執行該工作。

本節中的步驟假設下列三個資料表中的使用:

事件類型的資料表    

TypeID

事件類型

1

產品啟動

2

公司函數

3

私人函數

4

基金 Raiser

5

商展

6

課堂 (英文)

7

音樂會

8

展示

9

市集

[客戶] 資料表    

客戶識別碼

公司

連絡人

1

Contoso, Ltd. 圖形

Jonathan Haas

2

Tailspin Toys

成凱倫

3

4

Wingtip 玩具

Lucio Iallo

5

A. 材料

王士 Samant

6

冒險工廠

方柏納立民

7

設計協會

Jaka Stele

8

學校的藝術

Milena Duomanova

[事件] 資料表    

事件識別碼

事件類型

客戶

事件日期

價格

1

產品啟動

Contoso, Ltd.

4/14/2003

$10,000

2

公司函數

Tailspin Toys

4/21/2003

$8,000

3

商展

Tailspin Toys

5/1/2003

$ 25000

4

展示

Graphic Design Institute

5/13/2003

$4,500

5

商展

Contoso, Ltd.

5/14/2003

$ 55,000

6

音樂會

學校的藝術

5/23/2003

$12,000

7

產品啟動

A. 材料

6/1/2003

$15,000

8

產品啟動

Wingtip 玩具

6/18/2003

$21,000

9

基金 Raiser

冒險工廠

6/22/2003

$ 1,300

10

課堂 (英文)

Graphic Design Institute

6/25/2003

$ 2,450

11

課堂 (英文)

Contoso, Ltd.

7/4/2003

$ 3800

12

市集

Graphic Design Institute

7/4/2003

$5,500

附註: 本節中的步驟假設的客戶及事件類型位於事件資料表的一個對多關聯 「 一 」 端的資料表。 在此情況下,Events 表格都有客戶識別碼] 和 [TypeID 欄位。 下一節所述的查詢將無法運作而這些關聯性的總計。

如何新增此資料至資料庫?

若要新增這些範例資料表到資料庫,您可以將資料複製到 Excel,然後匯入資料,但只有少數例外:

  • 當您將事件類型和 [客戶] 資料表複製到 Excel 時,不要複製 TypeID 與識別碼資料行。 Access 會新增主索引鍵值,當您匯入工作表。這可以省去一些時間。

  • 您匯入資料表後,必須在 [設計檢視] 中開啟事件資料表,並的事件類型與客戶的資料行轉換為查閱欄位。 因此,按一下每個欄位的資料類型] 欄,然後按一下 [查閱精靈]

    建立查閱欄位的一部分,Access 會取代來源資料表中的數字值中的事件類型與客戶的資料行的文字值。

    如需建立及使用查閱欄位的詳細資訊,請參閱建立或刪除多重值欄位多重值欄位入門的文章。 這兩個文章說明如何建立可讓您以選取多個特定欄位的值,也會說明如何建立查閱清單的查閱欄位的類型。

建立合計查詢

  1. 在 [建立] 索引標籤上,按一下 [查詢] 群組中的 [查詢設計]。

    [顯示資料表] 對話方塊隨即出現。

  2. 在對話方塊中,選取您想要使用,按一下 [新增],然後按一下關閉完成新增資料表的資料表。

    -或-

    按兩下您要使用的資料表,然後按一下 [關閉]。 每個資料表會出現在查詢設計工具的上半部區段中。

    如果您使用上述的範例資料表,將事件和事件類型資料表。

  3. 按兩下您想要使用您在查詢中的資料表欄位。 請確定您新增只有群組或類別欄位和 [值] 欄位至查詢此時。

    如果您使用上述三個表格中所列的範例資料,您可以從資料表中新增事件類型資料表中的欄位事件類型或 [事件日期] 欄位。

  4. 或者,您可以指定準則限制查詢的範圍。 排序符合準則的記錄,並排序清單中識別上方和下方欄位的值。

    例如,如果您想要在私人函數類別中傳回事件,您輸入這個運算式的事件類型] 資料行的 [準則] 列中: <> 「 私人函數 」

    若要查看更多的查詢準則運算式範例,請參閱查詢準則範例一文。

  5. 將查詢轉換成合計查詢中,執行下列動作:

    [設計] 索引標籤上,按一下 [顯示/隱藏] 群組中的 [合計]

    [合計] 列會顯示在設計格線中。

  6. 確定每個群組] 或 [類別] 欄位的 [合計] 列會設定為 [群組依據],然後將 [合計] 列的值欄位 (頂端或底端值) 設定為 [最大值] 或 [最小值

    Max 函數會傳回數值的欄位和日期/時間] 欄位中的最新日期或時間值的最大值。 Min會傳回最小值的數值欄位和日期/時間] 欄位中的最早日期或時間值。

  7. [設計] 索引標籤的 [查詢設定] 群組中,按一下向下箭號的旁邊所有在前面的值清單),請輸入您想要查看,或從清單中選取一個選項的記錄數目。

    在此情況下,選取 [所有],然後按一下 [執行在資料工作表檢視中顯示結果。

    附註: 根據您在步驟 6 選擇的函式,Access 查詢中的 [值] 欄位的名稱變更為MaxOffieldname 功能MinOffieldname 功能。 如果您使用範例資料表時,Access 重新命名 [ MaxOfEvent日期MinOfEvent日期] 欄位。

  8. 儲存查詢,然後移至下一個步驟。

查詢結果不會顯示產品名稱或其他產品的相關資訊。 若要查看其他資料,您需要建立第二個查詢,其中包含您剛才建立的查詢。 接下來的步驟說明如何執行此動作。

建立第二個查詢來新增更多資料

  1. 在 [建立] 索引標籤上,按一下 [查詢] 群組中的 [查詢設計]。

  2. 在 [顯示資料表] 對話方塊中,按一下 [查詢] 索引標籤,然後按兩下您在上一節中建立合計查詢。

  3. 按一下 [表格] 索引標籤,並將您在合計查詢中使用的資料表及也新增所有包含的其他相關的資料的表格。 如果您使用上述的三個範例資料表中,事件類型、 事件和客戶資料表新增至您的新查詢。

  4. 其父資料表中對應的欄位來加入合計查詢中的欄位。 若要這樣做,請拖曳合計查詢中的每個欄位至資料表中的對應欄位。

    如果您使用的三個資料表中的範例資料,請將事件類型] 資料行合計查詢中拖曳到事件類型資料表中的事件類型] 欄位。 然後拖曳MaxOfEvent Date ] 資料行合計查詢中 Events 表格中的事件日期欄位。 建立這些聯結可讓您選取的新查詢,以將合計查詢中的資料與其他資料表的資料。

  5. 從查詢中的其他資料表中新增其他描述性欄位。

    如果您使用的三個資料表中的範例資料,您可以從 [客戶] 資料表中新增 [公司] 和 [連絡人欄位。

  6. 或者,您可以指定一或多個欄的排序順序。 比方說,如果清單字母順序排列的類別,您可以將事件類型] 資料行 [排序] 資料列以遞增

  7. [設計] 索引標籤上的 [結果] 群組中,按一下 [執行]

    查詢的結果會顯示在資料工作表檢視中。

提示:  如果您不想要顯示為MaxOfPriceMinOfPrice[價格] 欄標題,在 [設計檢視] 中開啟查詢,然後在 [格線中的 [價格] 欄中,輸入價格: MaxOfPrice價格: MinOfPrice價格會顯示為資料工作表檢視中的欄標題。

頁面頂端

尋找最新和最早日期

頂端或底端的值,但並非兩者同時,可傳回本文稍早建立的查詢。 如果您想要查看兩組值中的單一檢視,您需要建立兩個查詢 — 擷取頂端值,另一個擷取底端值的其中一個,然後合併並儲存在單一資料表中的結果。

尋找頂端和底端的值,並在表格中顯示該資料的程序會依循下列大略的步驟:

  • 建立臨界數值,值會查詢,或如果您需要將您的資料,建立合計查詢使用的最小最大值的函式的底部。

  • 將最值的查詢 (或最大合計查詢) 至製成資料表查詢,然後建立新資料表。

  • 您底端值的查詢 (或最小值合計查詢) 轉換為新增查詢,並將記錄新增至您主要的值的資料表。

    下列章節中的步驟說明如何進行此動作。

    建立查詢

    1. 建立 [上及下值的查詢。

      建立頂端或底端值查詢時所需的步驟,請參閱本文中前述尋找最近或最早日期。 如果您需要將您的記錄依類別,請參閱尋找最近或最早日期類別或群組中的記錄,請稍早在本文章中。

      如果您使用範例資料表從最後一個區段,使用的資料 Events 表格中。 使用事件類型、 客戶和事件日期資料表的欄位事件中這兩個查詢。

    2. 儲存每個查詢有意義的名稱,例如頂端值和底部的值,並使其保持開放] 供用於在接下來的步驟。

建立產生資料表查詢

  1. 與您臨界數值查詢設計檢視中開啟:

    [設計] 索引標籤的 [查詢類型] 群組中,按一下 [製成資料表]

    [製成資料表] 對話方塊便會出現。

  2. 在 [表格名稱] 方塊中,輸入將儲存的上方和下方的記錄之資料表的名稱。 比方說,輸入頂端和底部記錄,然後按一下[確定]

    每當您執行查詢,而非資料工作表檢視中顯示結果,查詢會建立一個資料表和頂端值取代目前的資料。

  3. 儲存並關閉查詢。

建立新增查詢

  1. 使用您底端值的查詢設計檢視] 中:

    在 [設計] 索引標籤的 [查詢類型] 群組中,按一下 [新增]。

  2. [新增] 對話方塊就會出現。

  3. 輸入您在 [製成資料表] 對話方塊中輸入相同的名稱。

    比方說,輸入頂端和底部記錄,然後按一下[確定]。 每次執行查詢,而不是在資料工作表檢視中顯示結果,查詢會將附加記錄頂端和底部記錄的資料表。

  4. 儲存並關閉查詢。

執行查詢

  • 您已準備好要執行兩個查詢。 在 [功能窗格] 中按兩下頂端值查詢和 Access 提示您時,請按一下[是] 。 然後按兩下底端值查詢和 Access 提示您時,請按一下[是]

  • 資料工作表檢視] 中開啟的頂端和底部記錄的資料表。

重要: 如果您嘗試執行產生資料表,或新增查詢,但好像什麼動作都沒有發生,請檢查 Access 狀態列下列訊息:

[巨集指令或事件已經被停用模式封鎖。]

如果您看到的郵件,請採取下列步驟:

  • 如果尚未顯示,顯示 [訊息列]。 若要這麼做,請在 [資料庫工具] 索引標籤的 [顯示/隱藏]群組中,按一下 [訊息列

  • 在訊息列上,按一下 [選項]

    [Microsoft Office 安全性選項] 對話方塊即會顯示。

  • 選取 [啟用這個內容] ,然後按一下[確定]

  • 再次執行查詢。

頁面頂端​​

增進您的 Office 技巧
探索訓練
優先取得新功能
加入 Office 測試人員

這項資訊有幫助嗎?

感謝您的意見反應!

感謝您的意見反應! 我們將協助您與其中一位 Office 支援專員連絡以深入了解您的意見。

×