SQL查询时使用判断语句

oracle中if...else的方法

第一种:写表达式

sql 复制代码
SELECT
	CASE 
		WHEN 2>1 THEN '真'
		ELSE '假'
	END AS WE
FROM DUAL
第二种:固定
sql 复制代码
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)

sql 复制代码
SELECT
	DECODE(2, 1, '男', 2, '女', '未知')
FROM
	DUAL

注意:NVL()是oracle数据库中对字段的非空校验,如果字段名为空,则赋值为逗号后面的值。

mysql中if...else的方法

第一种:

sql 复制代码
SELECT
	IF(1>0, '真', '假')
FROM
	DUAL

也可以多条件嵌套用:

sql 复制代码
SELECT
	IF(1>0, IF(2>1, '真', '假'), '假')
FROM
	DUAL

第二种:

sql 复制代码
SELECT
	CASE 1
		WHEN 1 THEN '字段的值是1'
		WHEN 2 THEN '字段的值是2'
		ELSE '字段的值3'
	END AS WE
FROM
	DUAL

注意:ifnull("字段名", 值) -- 非空验证 如果字段为空就输出后面的值

相关推荐
m0_561359676 小时前
使用PyQt5创建现代化的桌面应用程序
jvm·数据库·python
2301_790300966 小时前
用Python实现自动化的Web测试(Selenium)
jvm·数据库·python
m0_561359676 小时前
使用Docker容器化你的Python应用
jvm·数据库·python
一条闲鱼_mytube6 小时前
MySQL vs PostgreSQL 对比
数据库·mysql·postgresql
Maynor9966 小时前
Clawdbot安装教程:从零开始到接入飞书
java·数据库·飞书
小北方城市网6 小时前
Spring Boot 多数据源与事务管理实战:主从分离、动态切换与事务一致性
java·开发语言·jvm·数据库·mysql·oracle·mybatis
u0109272716 小时前
使用Scrapy框架构建分布式爬虫
jvm·数据库·python
l1t6 小时前
DeekSeek辅助总结PostgreSQL Mistakes and How to Avoid Them 的一个例子
数据库·postgresql
醉风塘7 小时前
JDBC批量操作终极指南:PreparedStatement批处理与事务性能优化实战
数据库·性能优化