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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • C#多线程同步事件及等待句柄

    C#多线程同步事件及等待句柄最近捣鼓了一下多线程的同步问题,发现其实C#关于多线程同步事件处理还是很灵活,这里主要写一下,自己测试的一些代码,涉及到了AutoResetEvent和ManualResetEvent,当然还有也简要提了一下System.Threading.WaitHandle.WaitOne、System.Threading.WaitHandle.WaitAny和System.Threading.Wait

    2022年7月15日
    13
  • 手机怎样复制一段文字_微信文章如何整篇复制出来

    手机怎样复制一段文字_微信文章如何整篇复制出来1、网页复制大家应该都遇到过这种情况吧像这种情况怎么办呢,很简单,方法也很多,最简单的就是就地取材。方法一:用翻译获取,我们用鼠标选择一部分后会自动出现翻译,没有出现翻译需要等一到两秒(如果实在没有可以往下看看别的复制方法),我们点击翻译然后会出现一个百度翻译,我们点击百度翻译它会自动跳转到百度翻译页面,我们可以直接复制就行了方法二:用网页控制台,我们F12打开控制台,F12打不开控制台的可以试试Fn+F12,或者右键检查,打开控制台后…

    2022年10月20日
    4
  • Python 二进制,十进制,十六进制转换「建议收藏」

    Python 二进制,十进制,十六进制转换「建议收藏」十六进制到十进制使用int()函数,第一个参数是字符串’0Xff’,第二个参数是说明,这个字符串是几进制的数。 转化的结果是一个十进制数。>>>int(‘0xf’,16) 15二进制到十进制>>>int(‘10100111110′,2)   1342八进制到十进制>>>int(’17’,8)  15其实可以

    2022年5月19日
    45
  • 一个低级的ORA-01017错误

    一个低级的ORA-01017错误事件缘由:使用sys账户创建了一个数据清理的存储过程,再创建一个Oraclejob定时运行这个存储过程,用于做表数据的清理。第二天看表数据未删除,说明job执行有错,打算使用sys账号登录查看job运行情况,反复输入sys账户信息,总提示ORA-01017,1.尝试改sys用户密码,重试报错依旧。2.使用sys登录GC,报错相同。使用普通用户登录正常。3.数据库服务器上使用sq

    2022年6月1日
    35
  • vue-axios使用_vue接口请求放在哪里写

    vue-axios使用_vue接口请求放在哪里写什么是axiosAxios是一个基于promise的HTTP库,可以用在浏览器和node.js中。主要的作用:axios主要是用于向后台发起请求的,还有在请求中做更多是可控功能。a

    2022年7月31日
    30
  • pycharm使用pip安装第三方库_pycharm详细安装教程

    pycharm使用pip安装第三方库_pycharm详细安装教程python的安装教程1.打开python官网2.windows系统点Downloads下面的windows3.带64的表示电脑是64位系统的,其中不带64的表示32位操作系统的,而右边一列数字后面有字母(即带有后缀)的不建议下载,就是临时版本,而我们最好下载3.6的版本。1.DownloadWindowsx86-64embeddablezipfile这是一个压缩文件2.DownloadWindowsx86-64executableinstaller这是一个可执行的文件

    2022年8月26日
    5

发表回复

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

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