sql中的判断语句 if…else的使用[通俗易懂]

sql中的判断语句 if…else的使用[通俗易懂]–1.oracle和mysql数据库都可以这样写CASEWHEN(RO.APPROVE_QUANTITY-NVL(tto.QUANTITY,0))<0THEN0ELSE(RO.APPROVE_QUANTITY-NVL(tto.QUANTITY,0))ENDsurplusQuantity--注意:NVL()是oracle数据库中对字段的非空校验,如果字段名为

大家好,又见面了,我是你们的朋友全栈君。

1.oracle中if..else的方法:
	第一种:写表达式
		SELECT
			CASE 
			 	WHEN 2>1 THEN '真'
				ELSE '假'
			END AS WE
		FROM DUAL
		
	第二种:固定
		SELECT
			CASE 1
				WHEN 1 THEN '字段的值是1'
				WHEN 2 THEN '字段的值是2'
				ELSE '字段的值3'
			END AS WE
		FROM
			DUAL
			
	第三种:DECODE(需要判断的值,判断1的结果条件(if),符合判断1的结果,判断2的结果条件(else if),符合判断2的结果,(else)SELECT
			DECODE(2, 1, '男', 2, '女', '未知')
		FROM
			DUAL
			
	注意:NVL()是oracle数据库中对字段的非空校验,如果字段名为空,则赋值为逗号后面的值。

2.mysql中if...else的方法
	第一种:
		SELECT
			IF(1>0, '真', '假')
		FROM
			DUAL
			
		也可以多条件嵌套用:
		SELECT
			IF(1>0, IF(2>1, '真', '假'), '假')
		FROM
			DUAL
			
	第二种:
		SELECT
			CASE 1
				WHEN 1 THEN '字段的值是1'
				WHEN 2 THEN '字段的值是2'
				ELSE '字段的值3'
			END AS WE
		FROM
			DUAL
		
	注意:ifnull("字段名",) -- 非空验证 如果字段为空就输出后面的值

如果大家知道更好的方法,欢迎下面进行留言,共同学习进步,觉得对你有用的话记得点个赞喔。
原创不易,且行且珍惜,转载请注明出处https://blog.csdn.net/yongfeng929/article/details/73733028

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/160598.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Oracle修改字段类型Sql –ORA-01439

    Oracle修改字段类型Sql –ORA-01439有一个表名为tb,字段段名为name,数据类型nchar(20)。1、假设字段数据为空,则不管改为什么字段类型,可以直接执行:altertabletbmodify(namenvarchar2(40));2、假设字段有数据,则改为varchar2(40)执行时会弹出:“ORA-01439:要更改数据类型,则要修改的列必须为空”,这时要用下面方法来解决这个问题:–修改原字段…

    2022年5月26日
    80
  • windows10更新报错0x80240fff_windows10易升有什么用

    windows10更新报错0x80240fff_windows10易升有什么用win10更新错误0x8000ffff处理方法:1.同时按下Windows键和R键,打开运行,输入services.msc;2.找到WindowsUpdate服务项,右键选择禁用;3.打开c:\windows\SoftwareDistribution\datastore,删除datastore和和Download两个文件夹下的所有文件;4.按照1和2的步骤开启WindowsUpdate服务,重新检查更新;如果不行用下法试试:右键点击开始——命令提示符(管理员),输入以下命令尝试修复。dism

    2022年9月25日
    0
  • javaweb登录注册功能实现 javaweb 登陆注册 入门 mysql数据库交互 web前后台交互 用户管理增删改查 实现登录 注册 登陆 JavaWeb 简单登陆注册「建议收藏」

    javaweb登录注册功能实现 javaweb 登陆注册 入门 mysql数据库交互 web前后台交互 用户管理增删改查 实现登录 注册 登陆 JavaWeb 简单登陆注册「建议收藏」用户登录注册流程图老版:新版:登陆界面注册界面登陆成功界面LoginServletimportjava.io.IOException;importjavax.servlet.ServletException;importjavax.servlet.annotation.WebServlet;importjavax.servle…

    2022年6月3日
    32
  • django3.0异步_java定时任务框架选型

    django3.0异步_java定时任务框架选型celery介绍Celery是由Python开发、简单、灵活、可靠的分布式任务队列,是一个处理异步任务的框架,其本质是生产者消费者模型,生产者发送任务到消息队列,消费者负责处理任务。Celery侧重

    2022年7月29日
    5
  • 树的先序遍历对应二叉树的_先序遍历输入一个二叉树

    树的先序遍历对应二叉树的_先序遍历输入一个二叉树笔试特别喜欢考这种题。先说一下思路。首先,需要明白前序、中序、后序遍历:①前序:根→左→右②中序:左→根→右③后序:左→右→根仅明白这个是不行的,还需要技巧。对于标题中的问题,我们很容易判断根节点是A,A的右节点是B,A的左边有CDFEGH,如下图:然后,将问题进行分解。去掉了AB结点之后,问题可分解如下:按照同样的套路,我们可以画出子问题的数大大概结构,如下图:与第一步画…

    2022年9月3日
    3
  • windows如何在局域网下共享文件(传输文件、修改文件)

    windows如何在局域网下共享文件(传输文件、修改文件)前些天在了解Git版本控制的时候,看到了“局域网下可以共享文件(阅读or修改)”。发现自己之前都没了解过这个,虽然用着GitHub却对其来源的变化不甚了解。于是就动手操作了一下windows如何在局域网下共享文件。对,还有一些局域网下的传输软件。但我还没有去了解,所以在这里先不说了。什么是局域网局域网(LocalAreaNetwork,LAN),又称内网。指覆盖局部区域(如办公室…

    2022年5月4日
    206

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号