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

相关推荐
LlmCraft|大模型工程实践7 分钟前
08. Docker Compose 一键编排:多容器应用的指挥家
java·spring cloud·eureka
珍珠先生14 分钟前
第14章 设计模式入门:单例、工厂、建造者与代理
java
坐吃山猪20 分钟前
JDK 8 到 JDK 21 新特性知识要点
java·开发语言·windows
坐吃山猪22 分钟前
【多线程】FutureTask多线程底层实现
java·开发语言·数据库
weixin1997010801626 分钟前
[特殊字符]《从0到1:闲鱼开放平台授权登录 + AccessToken 刷新 + 聚石塔部署完整链路》(附Python源码)
java·数据库·python
Freak嵌入式44 分钟前
RP2040 PIO 编程模型与状态机原理:从硬件架构到工作逻辑全解析
java·大数据·开发语言·单片机·嵌入式硬件·硬件架构
cmes_love1 小时前
国内期货Level2五档行情与逐笔成交数据介绍
数据库·区块链
kakawzw1 小时前
Netty源码笔记
java·服务器·后端
zhuodedao1 小时前
Spring AI + MCP 文件工具未调用问题复盘:为什么初始化成功却没有写入文件?
java·debug·agent·springai·mcp
cmes_love1 小时前
CME和CBOT外盘期货数据下载资源介绍
数据库·区块链