2010-08-05 104 views
0

先生,它就像在功能上搜索基於一些標準的SQL查詢

我需要搜索存儲在ms訪問表中的數據表。我爲合同號,用戶名和日期創建了一個文本框,並且需要根據合同號或用戶名或日期搜索表格。

因爲我需要一個編碼來解決單個sql命令中的問題。我已經嘗試了與哪裏的幫助是一個表,搜索測試是形式。

時的幫助(表).cont_no(場)等於搜索測試(窗體名稱).cont_no(文本框字段)

SELECT * FROM Help WHERE (((Help.cont_no)=[Forms]![search-test]![cont_no])) OR 
(((Help.username)=[Forms]![search-test]![username]) or 
((Help.date)=[Forms]![search-test]![cbo_date])); 

希望您能理解我的觀點

回答

0

我我想我明白你想基於這些標準的任何組合進行搜索。我建議你試試這個:

SELECT * 
FROM Help 
WHERE 
    ([Forms]![search-test]![cont_no] = '' OR Help.[cont_no]=[Forms]![search-test]![cont_no]) 
AND 
    ([Forms]![search-test]![username] = '' OR Help.[username]=[Forms]![search-test]![username]) 
AND 
    ([Forms]![search-test]![cbo_date] = '' OR Help.[date]=[Forms]![search-test]![cbo_date]) 

這個查詢將搜索的搜索框的組合,如果你已經在他們輸入的值。 如果它們是空白的,它們將被排除在搜索條件之外。 您可能需要按照字段「空」狀態的要求進行調整。

SELECT * 
FROM Help 
WHERE 
    Help.[cont_no]=[Forms]![search-test]![cont_no] 
OR 
    Help.[username]=[Forms]![search-test]![username] 
OR 
    Help.[date]=[Forms]![search-test]![cbo_date] 
+0

非常感謝立即答覆: 如果你要搜索的,您可以使用條件或條款的任何組合如下我假設「空」是一個空字符串

UPDATE 。我給了一個代碼。如果所有的場景都是由用戶輸入的,它就會工作。我需要一個結合了所有sql命令的代碼。用戶可以輸入一個或兩個字段或全部三個字段。我需要用一個字段查詢或兩個feild查詢或三個feilds查詢來搜索數據庫。我已經嘗試過,在哪裏幫助是一個表和搜索測試是form.contract否,用戶名和數據庫和表單中的日期。幫助(表格).cont_no(字段)等於或不等於search-test(表格名稱).cont_no(文本框字段) – user411670 2010-08-06 06:44:27