MySQL中使用case when 语句实现多条件查询的方法


举例如下:

数据表为DemoTable,字段有id, condition1,condition2,condition3,condition4,condition5

要求是查询DemoTable中,condition1,condition2,condition3,condition4,condition5五个字段中符合任意两个或两个以上的条件的内容。

可使用case when来实现这个条件,需要嵌套子查询语句

sql语句代码示例如下:

复制代码 代码如下:

SELECT * FROM DemoTable
WHERE ((SELECT CASE 1 WHEN condition1满足条件 THEN 1 ELSE 0 END FROM DemoTable )
+(SELECT CASE 1 WHEN condition2满足条件 THEN 1 ELSE 0 END FROM DemoTable)
+(SELECT CASE 1 WHEN condition3满足条件 THEN 1 ELSE 0 END FROM DemoTable)
+(SELECT CASE 1 WHEN condition4满足条件 THEN 1 ELSE 0 END FROM DemoTable)
+(SELECT CASE 1 WHEN condition5满足条件 THEN 1 ELSE 0 END FROM DemoTable))>=2



相关阅读:
采用mod_gzip加速Zope和Apache
IIS 有问必答
如何去掉2.7中乱跑的“Powered by ECShop”?
CSS实例:无懈可击的CSS圆角技术
一个加载js文件的小脚本
ASP.NET Gridview与checkbox全选、全不选实现代码
PHP 编码规范-文件结构
Windows 8有必要实现的功能
Freebsd下程序随系统开机启动的方法
Vi编辑器的使用方法
ASP开发中存储过程应用全接触
为非IE浏览器添加mouseenter,mouseleave事件的实现代码
jquery isEmptyObject判断是否为空对象的函数
如何在HTML中得到正确的URL属性值
快速导航

Copyright © 2016 phpStudy | 皖ICP备18014864号-4