簡體   English   中英

日期查詢之間的 MS Access 不起作用

[英]MS Access Between dates query is not working

我是 Access DB 初學者。 我有一個帶有 SearchForm 的數據庫,用戶可以在其中輸入搜索條件,單擊“搜索”按鈕並使用過濾后的結果填充子表單。

該查詢基於用戶在搜索表單字段中輸入的內容進行簡單查詢

Like "*" & [Forms]![SampleSearchF]![txtMicrochip] & "*"效果很好,但我的日期過濾器沒有產生任何結果: Between [Forms]![SampleSearchF]![DateReceivFrom] And [Forms]![SampleSearchF]![DateReceivTo]

日期搜索基於的表字段是數據類型:日期/時間,格式:短日期搜索表單字段是格式短日期子表單字段也是短日期

SearchButton 是一個重新查詢宏

當我在查詢中有這個查詢條件時,所有搜索功能都不起作用。 我可以尋求解決問題的任何建議嗎? 任何幫助表示贊賞。

這是我的 SQL 搜索查詢代碼,

FROM IndividualsT INNER JOIN SamplesT ON IndividualsT.AnimalID = SamplesT.AnimalID
WHERE (((IndividualsT.SpeciesName) Like "*" & [Forms]![SampleSearchF]![txtSpeciesName] & "*") AND 
((IndividualsT.Microchip) Like "*" & [Forms]![SampleSearchF]![txtMicrochip] & "*") AND 
((IndividualsT.Name) Like "*" & [Forms]![SampleSearchF]![txtName] & "*") AND
 ((SamplesT.Location) Like "*" & [Forms]![SampleSearchF]![txtLocation] & "*") AND
 ((SamplesT.SampleReceived) Between [Forms]![SampleSearchF]![DateReceivFrom] And [Forms]![SampleSearchF]![DateReceivTo]));

樣品T

樣品編號 動物編號 收到樣品 地點 采集日期
1個 1個 18/08/2021 塔斯馬尼亞州 10/08/2021
7 1個 15/09/2021 柏林 25/09/2021
13 12 25/09/2021 悉尼 2021 年 4 月 9 日
14 12 24/09/2021 紐約 2021 年 1 月 9 日

個人T

動物編號 種名 微芯片 名稱
1個 鸚鵡 1234 雨果
12 考拉 853 夏洛克

SamplesTable_DesignView

您的問題可能是表單字段為空時的WHERE邏輯。 當為空時, LIKE表達式返回**表示任何內容,因此不會過濾掉任何行。 但是,空日期與BETWEEN子句沖突。 如果表單字段為空,請考慮使用NZ返回列本身:

(
  SamplesT.SampleReceived 
    BETWEEN NZ([Forms]![SampleSearchF]![DateReceivFrom], SamplesT.SampleReceived)
        AND NZ([Forms]![SampleSearchF]![DateReceivTo], SamplesT.SampleReceived)
); 

始終指定參數的數據類型

Parameters
    [Forms]![SampleSearchF]![txtSpeciesName] Text ( 255 ),
    [Forms]![SampleSearchF]![txtMicrochip] Text ( 255 ),
    [Forms]![SampleSearchF]![txtName] Text ( 255 ),
    [Forms]![SampleSearchF]![txtLocation] Text ( 255 ),
    [Forms]![SampleSearchF]![DateReceivFrom] DateTime,
    [Forms]![SampleSearchF]![DateReceivTo] DateTime;
Select *
From YourTable
Where ...

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM