当前位置: 首页 > news >正文

SQL知识合集(二):函数篇

TRIM

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

SELECT *
FROM your_table_name
WHERE TRIM(column_name) = '';

COALESCE

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

SELECT COALESCE(column1, column2, 'default_value') AS result
FROM your_table_name;

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

NULLIF

作用:如果字段A等于{M}则该字段设置为空

SELECT 
COALESCE(NULLIF(urls, 'a'),avatar,'nonono' ) a
FROMlspace_diga.off_user

CURDATE()

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

DATEDIFF

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

SELECTDATEDIFF(CURDATE(),'2000-05-04')

 答案:8961

CONCAT_WS

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

SELECTCONCAT_WS(',', NULLIF(urls, ''), age, avatar) AS concatenated_result
FROMlspace_diga.off_user;

IFNULL

作用:判断是否为空

select IFNULL('ok','default')  //ok
select IFNULL(null,'default')  //default

wm_contact

作用:函数返回一个字符串结果,该结果由分组中的值连接组合而成。

-- 查询一个课程包含那些题
SELECT c.id,GROUP_CONCAT(t.title) from course c left JOIN topical t ON t.course_id=c.id GROUP BY c.id

 DATE_FORMAT() 

作用:格式化日期

DATE_FORMAT(NOW(),'%Y-%m-%d')  2023-09-09

EXTRACT()

作用:函数用于返回日期/时间的单独部分,比如年、月、日、小时、分钟等等。

SELECT EXTRACT(YEAR FROM OrderDate) AS OrderYear,
EXTRACT(MONTH FROM OrderDate) AS OrderMonth,
EXTRACT(DAY FROM OrderDate) AS OrderDay
FROM Orders
WHERE OrderId=1

ANY_VALUE

作用:ANY_VALUE(sale_date) AS any_sale_date:返回每组中任意一个 sale_date

SELECT product_id,SUM(quantity) AS total_quantity,ANY_VALUE(sale_date) AS any_sale_date
FROM sales
GROUP BY product_id;

NOT EXISTS()

作用:查询不存在的集合中的记录

SELECT *
FROM departments
WHERE EXISTS (SELECT 1FROM employeesWHERE departments.department_id = employees.department_idAND employees.employee_id = 123
);

ROUND()

作用:将数值表达式四舍五入到指定的小数位数

-- 结果 12.13
SELECT ROUND(12.125,2)

SUBSTRING_INDEX

作用:根据指定的分隔符(delimiter)截取字符串的一部分。

select SUBSTRING_INDEX('apple,banana,orange,grape',',',1) -- 第一个逗号左边
select SUBSTRING_INDEX('apple,banana,orange,grape',',',2) -- 第二个逗号左边
select SUBSTRING_INDEX('apple,banana,orange,grape',',',3) -- 第三个逗号左边select SUBSTRING_INDEX('apple,banana,orange,grape',',',-1) -- 第一个逗号右边
select SUBSTRING_INDEX('apple,banana,orange,grape',',',-2) -- 第二个逗号右边
select SUBSTRING_INDEX('apple,banana,orange,grape',',',-3) -- 第三个逗号右边

http://www.xdnf.cn/news/893935.html

相关文章:

  • [蓝桥杯]通电
  • 继MySQL之后的技术-JDBC-从浅到深-02
  • PS--钢笔工具的用法
  • YOLOv11 | 注意力机制篇 | 可变形大核注意力Deformable-LKA与C2PSA机制
  • Android Compose PrimaryTabRow、SecondaryTabRow (TabRow)自定义
  • PH热榜 | 2025-06-05
  • zynq远程更新程序
  • Day 40训练
  • LLaMA-Factory和python版本的兼容性问题解决
  • 【时时三省】(C语言基础)多维数组名作函数参数
  • 【快餐点餐简易软件】佳易王快餐店点餐系统软件功能及操作教程
  • 2025年可持续发展与环境工程国际会议(SDEE 2025)
  • 老旧热泵设备智能化改造:Ethernet IP转Modbus的低成本升级路径
  • 亚马逊:产品被顾客投诉二手产品的申诉模板
  • cuda数据传输
  • 五、Sqoop 增量导入:精通 Append 与 Lastmodified 模式
  • 【案例】电商系统的AI微服务架构设计
  • 第2天:认识LSTM
  • bootstrap:点击回到顶部 超简单
  • Modbus转Ethernet IP深度解析:磨粉设备效率跃升的底层技术密码
  • CppCon 2015 学习:C++ in the audio industry
  • 风云二号FY-2H:探秘第一代静轨气象卫星的旗舰风采
  • 动静态库的使用(Linux下)
  • 代码随想录 算法训练 Day23:回溯算法part02
  • 体积云完美融合GIS场景~提升视效
  • 使用 Inno 打包程序且安装 VC 运行时库
  • 人工智能100问☞第41问:什么是边缘AI?
  • RPM 数据库修复
  • 6.824 lab1
  • std::shared_ptr 与 std::unique_ptr 删除器设计差异