有選用「WHERE」參數的預存程序
問題:
問題:在在資料檢索系統中,使用者定義的參數可以跨多個參數靈活地過濾資料。但是,當這些參數是可選的時,建立動態預存程序可能會變得具有挑戰性。
解決方案:SELECT * FROM table WHERE ( (@status_id IS NULL OR status_id = @status_id) AND (@date IS NULL OR [date] = @date) AND (@other_parameter IS NULL OR other_parameter = @other_parameter) )
此查詢單獨評估每個參數並將其包含在WHERE中僅當子句不為空時。 MySQL、Oracle 和SQL Server。
以上是如何有效率地建立具有可選 WHERE 子句參數的預存程序?的詳細內容。更多資訊請關注PHP中文網其他相關文章!