zoukankan      html  css  js  c++  java
  • SQL 中的多条件查询

    在应用程序开发中,多条件查询是个经常遇到的情况,最简单最麻烦的方法是把所有的可能情况都考虑到,但是无疑是繁琐的,而且很容易漏掉可能的情形,下面是SQL语句实现多条件查询的情况

    select * 
    from table 
    where table .a=case when isnull(a,'')!='' then a else table .a end
    and table .b=case when isnull(b,'')!='' then b else table .b end
    and table .c=case when isnull(c,'')!='' then c else table .c end
    and table .d=case when isnull(d,'')!='' then d else table .d end
    

     当查询条件a,b,c,d某个为空的时候,由于isnull的存在,会被替换为'',。

    上面的程序需要注意的是两点:

    (1)case的使用方法

    (2)null的使用方法

    这两个函数在SQL中都有详细的介绍,不再赘述!


    Searched CASE function:
    CASE
         WHEN Boolean_expression THEN result_expression
        [ ...n ]
         [
        ELSE else_result_expression
         ]
    END

    使用指定的替换值替换 NULL。

    ISNULL ( check_expression , replacement_value )

    需要注意的是check_expression可以隐式转换为replacement_value

  • 相关阅读:
    sublimetext插件安装
    解决Nextcloud 无法删除目录
    常用文章信息
    使用豆瓣的pip源安装python模块
    top命令的使用
    Centos 7 防火墙 firewalld 简单使用说明
    CentOS 7 时间同步方法
    二进制
    字典
    集合
  • 原文地址:https://www.cnblogs.com/CBDoctor/p/3777456.html
Copyright © 2011-2022 走看看