關於網友所提出的這個問題,要說難也是很難的,所以我的建議還是手邊有一本SQL語法手冊方便查詢

 


網友所提供的Test資料庫Test表單內容

20131023-01  

 


按照網友的需求程式以LabSQL完成程式,因為查詢條件多樣化,所以欄位名稱一併用程式處理,讓資料和欄位名稱能匹配

20131023-02  

 

20131023-03  

 


以下以網友的資料庫依序說明查詢條件格式


1.以欄位名稱查詢,取出同名欄位內的所有資料


語法是:SELECT 欄位名稱 FROM Test

20131023-04  

 

20131023-05  

 


2.以傳票號碼查詢,取出符合的傳票號碼的關聯資料


語法是:SELECT * FROM Test WHERE 傳票號碼 = '傳票號碼'


注意因為是要取出全部關聯的資料,所以SELECT後面要輸入的欄位名稱使用*字代表全部資料。另外語法後面=之後要比較的是文字資料,文字資料前後要加上 " 或 ' 字元才不會出錯。後續相同格式的文字資料都同樣處理

20131023-06  

 

20131023-07  

 


3.以日期查詢,取出符合的日期的關聯資料


語法是:SELECT * FROM Test WHERE 日期 = #日期#


注意在Access內資料格式為日期的才能使用這種比較法,若格式是字串的就不適用。另外日期的前後要加上 # 字元,Access資料庫有其專有的日期時間表現格式,細節可以參照站內另一篇文章"以日期範圍查詢資料"

20131023-08  

 

20131023-09  

 


4.以承辦人查詢,取出符合的承辦人的關聯資料


語法是:SELECT * FROM Test WHERE 承辦人 = '承辦人'

20131023-10  

 

20131023-11  

 


5.以商品查詢,取出符合的商品的關聯資料


語法是:SELECT * FROM Test WHERE 商品 = '商品'

20131023-12  

 

20131023-13  

 


6.以客戶查詢,取出符合的客戶的關聯資料


語法是:SELECT * FROM Test WHERE 客戶 = '客戶'

20131023-14  

 

20131023-15  

 


7.自訂查詢,語法參閱SQL語法手冊


根據語法手冊可以做更多樣的資料查詢

20131023-16  

 


首先查詢表單內全部資料


語法是:SELECT * FROM Test

20131023-17  

 


查詢表單內全部資料,並依數量的大小由小排到大


語法是:SELECT * FROM Test ORDER BY 數量 asc


把asc改成desc資料就會變成由大排到小

20131023-18  

 


查詢表單內全部數量在500到900之間的資料,並依數量的大小由小排到大


語法是:SELECT * FROM Test WHERE 數量 BETWEEN 500 AND 900 ORDER BY 數量 asc;

20131023-19  

 


由以上的例子可以看出,若查詢條件不定的時候,使用自訂查詢的方式應用上較靈活

, , ,

未出師的小工程師 發表在 痞客邦 PIXNET 留言(0) 人氣()