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("字段名", 值) -- 非空验证 如果字段为空就输出后面的值

相关推荐
6+h10 分钟前
【Redis】数据结构讲解
数据结构·数据库·redis
ID_1800790547312 分钟前
小红书笔记详情 API 接口系列 + 标准 JSON 返回参考(完整版)
数据库·笔记·json
hwscom13 分钟前
ChurchCRM SQL注入漏洞(CNVD-2026-12565、CVE-2026-24854)
sql·web安全
wertyuytrewm15 分钟前
用Python实现自动化的Web测试(Selenium)
jvm·数据库·python
我真会写代码20 分钟前
Java事务核心原理与实战避坑指南
java·开发语言·数据库
Gauss松鼠会28 分钟前
【GaussDB】GaussDB如何创建和管理序列、定时任务
数据库·性能优化·database·gaussdb
Forget_855029 分钟前
RHEL——NoSQL集群技术
数据库·nosql
wertyuytrewm1 小时前
自动化与脚本
jvm·数据库·python
Hello.Reader1 小时前
PySpark DataFrame 快速入门创建、查询、分组、读写、SQL 实战一篇讲透
数据库·sql·spark
qq_417695051 小时前
Python深度学习入门:TensorFlow 2.0/Keras实战
jvm·数据库·python