开发中SQL积累

1.SQL中判断varchar类型是否为空?

检查 NULL 值:

sql 复制代码
WHERE column_name IS NULL

检查空字符串:

sql 复制代码
WHERE column_name = ''

结合 NULL 和空字符串的检查:

sql 复制代码
WHERE column_name IS NULL OR column_name = ''

2.TRIM函数

作用:去掉字符串前后的空格

sql 复制代码
SELECT *
FROM your_table_name
WHERE TRIM(column_name) = '';

3.COALESCE函数

作用:返回其参数中的第一个非 NULL 值。它可以接受多个参数,并从左到右依次评估这些参数,直到找到第一个非 NULL 的值并返回。如果所有参数都是 NULL,则返回 NULL。

sql 复制代码
SELECT COALESCE(column1, column2, 'default_value') AS result
FROM your_table_name;

解释:COALESCE 将返回 column1 的值,如果 column1 是 NULL,则返回 column2 的值,如果 column2 也是 NULL,则返回 'default_value'。

4.NULLIF函数

作用:如果字段A等于空字符串则该字段设置为空

sql 复制代码
SELECT 
COALESCE(NULLIF(urls, ''),avatar,'nonono' ) a
FROM
	lspace_diga.off_user

5.CURDATE()函数

作用:返回当天的日期(不包含时间)

6.DATEDIFF函数

作用:计算两个日期之间的天数 CURDATE()大,2000-05-04小

sql 复制代码
SELECT
	DATEDIFF(
	CURDATE(),
	'2000-05-04')

答案:8961

7.FLOOR向下取整

8.CONCAT_WS函数

作用:拼接字符串,如果该字段为空的话直接跳过,不会拼接

sql 复制代码
SELECT
    CONCAT_WS(',', 
        NULLIF(urls, ''), 
        age, 
        avatar
    ) AS concatenated_result
FROM
    lspace_diga.off_user;

9.REPLACE函数

作用:它的基本用法是在一个给定的字符串中,用新的子字符串替换旧的子字符串

语法:

REPLACE(input_string, from_substring, to_substring)

input_string: 原始字符串,你希望在其中进行替换操作。

from_substring: 需要被替换的子字符串。

to_substring: 用于替换的新的子字符串。

示例:

假设你有一个字符串 "Hello World" 并希望将 "World" 替换为 "SQL"

sql 复制代码
SELECT REPLACE('Hello World', 'World', 'SQL');

结果: 'Hello SQL'

sql 复制代码
SELECT REPLACE('Remove all spaces', ' ', '');

结果: 'Removeallspaces'

相关推荐
丙氨酸長鏈5 小时前
Web前端入门第 问:JavaScript 一个简单的 IndexedDB 数据库入门示例
前端·javascript·数据库
独行侠影a5 小时前
APScheduler+Redis 分布式定时任务:解决多实例任务重复执行
数据库·redis·分布式
极光代码工作室5 小时前
基于SpringBoot的课程预约系统
java·springboot·web开发·后端开发
传说故事6 小时前
数据库中一些常用英文单词含义
数据库·oracle
Leighteen6 小时前
`try-finally` 里的 `return`:为什么 `finally` 会悄悄改掉返回值、吞掉异常
java·开发语言
夏贰四6 小时前
中小企业搭建业务中台如何控成本?业务中台轻量化落地分几步实施?
数据库·业务中台
林焱RPA7 小时前
影刀RPA200篇纪念版:最实用的20个自动化场景大盘点
数据库
名字还没想好☜7 小时前
Go 的 time.After 在 select 循环里内存泄漏:定时器堆积原理与 timer.Reset 正确姿势
java·数据库·golang·go·goroutine
圆山猫7 小时前
[Virtualization](三):RISC-V H-extension 与 Guest 执行模式
android·java·risc-v
caishenzhibiao7 小时前
期货先行者主图 同花顺期货通指标
java·c语言·c#