這邊先給你提供一個動態sqlselect*fromtablewhere1=1//這一步是針對所有條件均未滿足(where後必須跟子句)if(name!=""andname!=null){andname=條件一}
- 文化問答
- 答案列表
mysql多條件查詢:mysql多where條件[朗讀]
select*from(select*from表1unionallselect*from表2unionallselect*from表3unionallselect*from表4unionallselect*from表5)tbwhere入職日期='2014-04-20'and崗位='普工'。
首先判斷變量是否存在,然後動態生成sql查詢條件.php類似代碼如下:<?php$where="1=1";$sulv=2;if($sulv){$where.="andsulv=".$sulv;}//其他條件也要使用if語句判斷條件是否存在$sql="select*fromtablewhere".$where."orderbyiddesc";?>
select*from表名where條件1and條件2and條件3。
給你思路,具體你自己去寫:1.你這個是有二類條件:必選的:前二個2選1;後面三個條件是可選的,選全部等於沒選就沒必要加這個條件,關鍵字沒填的話等同;所以你其實就是1-4個條件.2.實現建議用存儲過程,參數根據實際情況傳遞,條件越多查詢越慢,越慢(耗cpu和io)的條件要放在語句的最後。