开发中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'

相关推荐
全栈老石1 小时前
拆解低代码引擎核心:元数据驱动的"万能表"架构
数据库·低代码
SimonKing3 小时前
OpenCode AI辅助编程,不一样的编程思路,不写一行代码
java·后端·程序员
FastBean3 小时前
Jackson View Extension Spring Boot Starter
java·后端
Seven975 小时前
剑指offer-79、最⻓不含重复字符的⼦字符串
java
皮皮林55114 小时前
Java性能调优黑科技!1行代码实现毫秒级耗时追踪,效率飙升300%!
java
冰_河14 小时前
QPS从300到3100:我靠一行代码让接口性能暴涨10倍,系统性能原地起飞!!
java·后端·性能优化
桦说编程17 小时前
从 ForkJoinPool 的 Compensate 看并发框架的线程补偿思想
java·后端·源码阅读
躺平大鹅19 小时前
Java面向对象入门(类与对象,新手秒懂)
java
初次攀爬者20 小时前
RocketMQ在Spring Boot上的基础使用
java·spring boot·rocketmq