这边先给你提供一个动态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)的条件要放在语句的最后。