`
stephen830
  • 浏览: 2965255 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

数据库sql语句在where中同样可以使用条件判断

阅读更多
★★★ 本篇为原创,需要引用转载的朋友请注明:《 http://stephen830.iteye.com/blog/280573 》 谢谢支持! ★★★

在一般情况下,SQL的条件判断语句都是用在select后面,例如mysql的if条件判断,或者oracle的decode条件判断,当然其他的数据库大家可以自己测试下,几乎很少会把条件判断用在where后面。

相信很多朋友都没有试过,其实至少mysql,oracle是完全支持的,你完全可以在SQL语句的where后面用条件判断语句。

下面有个具体的例子:


测试的数据表为 user_info ,数据表的数据如下图(图1)


(图1)

假如我们在这个表中查出 name为 mike或者Jerry的数据记录,一般都会写成:
SELECT * FROM user_info where name='mike' or name='Jerry'
或者
SELECT * FROM user_info where name in('mike','Jerry')


其实也可以利用在where后面加上条件判断语句来写,如:

mysql写法:
SELECT * FROM user_info where if(name='mike',name='mike',name='Jerry')


oracle写法:
SELECT * FROM user_info where name=decode(name,'mike','mike','Jerry')


查询的结果都是一样的,如下图(图2)

(图2)


当然,具体的使用还是要根据实际情况来决定,本文只是说明下,SQL中的条件判断不仅在select后面适用,同样也可以用在where后面。

------------------------------------------
分享知识,分享快乐,希望文章能给需要的朋友带来小小的帮助。




  • 大小: 2.2 KB
  • 大小: 1.8 KB
3
0
分享到:
评论
2 楼 helyho 2008-11-30  
mysql的不知道但是 oracle的这个方法经常用的

oracle 有个case when...then end;
1 楼 reyos 2008-11-27  
不错,收藏了

相关推荐

    数据库SQL查询语句练习题.doc

    sql 语句就是对数据库进行操作的一种语言。 常见语句 更新:update table1 set field1=value1 where 范围 查找:select * from table1 where field1 like ’%value1%’ (所有包含‘value1’这个模式的字符串) ...

    Oracle数据库Sql语句详解大全

    在查询中使用表达式、运算符 对空值的处理 对查询字段起别名 查询字段的连接 第二章 条件查询 WHERE条件查询 在查询中使用表达式、运算符 使用LIKE、BETWEEN、IN进行模糊查询 第三章 单行函数 熟悉各种类型单行...

    数据库sql语句和重要知识点总结

    数据库sql语句和重要知识点总结

    sql语句生成器+支持各大数据库+说明书

    SQL语句生成器的特色 支持几乎所有类型的数据库, 包括小型(桌面)数据库:Fox DBF、Microsoft Execl、Text、Borland Paradox、 中型数据库:Microsoft Access 大型数据库:Microsoft SQL Server、Sybase、Oracle ...

    数据库中sql语句的课件

    系统地讲解了sql语句,包括增加、删除、修改以及标的定义及表结构的修改等,都是自己做的哦,里面有许多例题,也有练习题。以下是一个例题: 例:查询学号为870107的成绩数、总成绩 和平均成绩。 select count(*)as...

    java定时执行sql语句

    通过配置数据库连接信息和要执行的sql语句,可实现定时执行多个sql语句。 所要执行的语句只能是写死的,可支持sqlserver mysql oracle。 配置说明: config/sys.properties 中指定数据库类型及连接信息,执行间隔...

    SQL Server数据库性能优化之SQL语句篇

    SQL Server数据库性能优化之SQL语句篇

    SQLServer表数据转化为sql语句(存储过程,一键批量导出、导入)

    功能: 根据表名、where条件,生成导出数据的SQL语句。(包含insert语句。结果可一键执行,利于数据导出、导入) 参数: @tableName nvarchar(100) --表名 ,@sqlWhere nvarchar(500) --where条件(传空时,导出全部...

    JAVA-SQL语句优化.doc

    在应用系统开发初期,由于开发数据库数据比较少,对于查询SQL语句的编写等体会不出SQL语句各种写法的性能优劣,但是如果将应用系统提交实际应用后,随着数据库中数据的增加,系统的响应速度就成为目前系统需要解决的...

    数据库SQL语句教程大全

    SQL语句教程(03) WHERE............................................................................................................ 2 SQL语句教程(04) AND OR ................................................

    数据库操作语句大全(sql)

    1、1=1,1=2的使用,在SQL语句组合时用的较多 “where 1=1” 是表示选择全部 “where 1=2”全部不选, 如: if @strWhere !='' begin set @strSQL = 'select count(*) as Total from [' + @tblName + '] where ' +...

    数据库SQL语句和c编程基础.doc

    数据库基础了解,包括多个数据库的区别,讲解sqlite3的使用,sql语句和where子句以及where子句的进阶,sql语句的进阶,c编程操作数据库等。

    通用SQL语句解析类SqlParser(JAVA版)

    项目中已使用的一个比较简单的SQL语句查询字段解析工具类

    MySQL自动生成数据字典SQL语句

    自己写的两个SQL语句生成对应数据库的数据字典,一个生成表集合,一个生成字段集合 只需修改where语句后面的TABLE_SCHEMA的数据库名即可

    sql课内上机实验数据更新

     使用UPDATE语句可以修改指定表中满足WHERE子句条件的元组,有三种修改的方式:修改某一个元组的值;修改多个元组的值;带子查询地修改语句。  使用DELETE语句删除数据:删除某一个元组的值;删除多个元组的值;...

    经典SQL语句大全

    1、1=1,1=2的使用,在SQL语句组合时用的较多 “where 1=1” 是表示选择全部 “where 1=2”全部不选, 如: if @strWhere !='' begin set @strSQL = 'select count(*) as Total from [' + @tblName + '] where ' + ...

    MyBatis动态SQL是一种强大的特性,它允许我们在SQL语句中根据条件动态地添加或删除某些部分,从而实现更加灵活和高效的数据

    mybatis动态sqlMyBatis动态SQL是一种强大的特性,它允许我们在SQL语句中根据条件动态地添加或删除某些部分,从而实现更加灵活和高效的数据库操作。在JDBC或其他类似框架中,开发人员通常需要手动拼接SQL语句,这既...

Global site tag (gtag.js) - Google Analytics