SQL Where子句的妙用
使用SQL Where子句可以實現很多我們所需的功能,下面就為您例舉一個使用SQL Where子句方法,希望對您學習SQL語句能有所啟迪。
當為用戶建立列表窗口時,往往需要為它指定一個數據檢索條件。當檢索條件很簡單或只有一個字段或者所有的條件字段都已經確定時,可以用一個簡單的帶有檢索參數的SQL Where子句就可以完成。
對于帶有多種選擇的非常復雜的檢索參數與條件,你不得不借助于動態SQL語句來修改數據窗口的SQL語句,但是如果你以使用靈活的SQL語句,就可以節約使用動態SQL語句的時間。
例如,如果我們建立一個雇員選擇窗口,要求用戶可以根據雇員編號、姓名、地址或它們的組合進行查找,我們可以定義三個適當類型的檢索參數,在PB的腳本中,還得定義三個數據窗口使用的檢索參數變量,而且還需要將這個能變量所對應的Edit控件的Null if empty選項選中,若沒有此選項或沒有選中,就應該編寫一段程序來實現:當字符串為空時,將它置為NULL.
然后在SQL語句中你就可以為NULL值編寫代碼了:
- SELECT emp_no, emp_name, emp_addr1, emp_telno
- FROM employee
- WHERE ( emp_no = :al_emp_no OR :al_emp_no IS NULL )
- AND ( emp_name = :as_emp_name OR :as_emp_name IS NULL )
- AND ( emp_addr1 = :as_emp_addr OR :as_emp_addr1 IS NULL )
你還可以在字符串的未尾使用%,并將比較符號的兩端都轉換為小寫(或大寫),以使程序顯示更友好。比如,你可以在腳本中將變量轉換為小寫,然后在數據窗口中使用:
- ( Lower( emp_name ) LIKE :as_emp_name...
【編輯推薦】