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

【Mysql】业务视角下,SQL字段处理专题

日期字段格式转化

DATE_FORMAT(violation_date, '%Y-%m-%d') AS formatted_date

多条结果字段合并成一条数组

select id,group_concat(price separator '##') from goods group by id;

获取多个字段中,非空字段的值

COALESCE(column1,column2,column3)

多个字段字符串拼接

CONCAT(column1,column2,column3)

字段过滤html(mysql8以下)

REGEXP_REPLACE(answer, '<[^>]*>+', '')

提取Json串里的值

-- 例如:字段值为{"lng":"111.722685","lat":"40.797585"}
-- 提取方法为:
json_extract(coordinate_info,'$.lng'),json_extract(coordinate_info,'$.lat')-- 同时去掉双引号的方法:
JSON_UNQUOTE(json_extract(coordinate_info,'$.lng'))

将多字段合并为Json串

-- 拼接一个json,比如:{'id':'123','name','张三'}
SeLeCt JSON_ARRAYAG(JSON_OBJECT('id',Id,'name',Name))

获取未来7天的日期

/**获取未来7天日期和星期x
**/
select *,CONCAT(day_name,'(',week_name,')') day_week_name
FROM
(
select DATE_FORMAT(weekday.day1,'%Y-%m-%d') day_name,
(
CASE DAYOFWEEK(weekday.day1)WHEN 1 THEN '星期日'WHEN 2 THEN '星期一'WHEN 3 THEN '星期二'WHEN 4 THEN '星期三'WHEN 5 THEN '星期四'WHEN 6 THEN '星期五'WHEN 7 THEN '星期六'ELSE '未知'
END
) week_name 
FROM
(
select DATE_SUB(NOW(),INTERVAL -1 DAY) day1 union
select DATE_SUB(NOW(),INTERVAL -2 DAY) day2 union
select DATE_SUB(NOW(),INTERVAL -3 DAY) day3 UNION
select DATE_SUB(NOW(),INTERVAL -4 DAY) day4 UNION
select DATE_SUB(NOW(),INTERVAL -5 DAY) day5 UNION
select DATE_SUB(NOW(),INTERVAL -6 DAY) day6 UNION
select DATE_SUB(NOW(),INTERVAL -7 DAY) day7
) weekday
) table1

坐标类,查询位置范围信息

-- 查询xx商场(坐标为:121.75977,60.819568)周边500m内的饭店记录SELECT l.*, ST_Distance_Sphere(l.coordinates, POINT(121.75977,60.819568)) AS distance
FROM demo_locations l
HAVING distance <= 500-- distance <= 500 代表:500米半径范围内.

坐标类,point类型提取经纬度数值

SELECT ST_X(location) AS longitude, ST_Y(location) AS latitude; 
-- 其中,ST_X函数返回POINT类型的坐标经度,ST_Y函数返回坐标纬度

用心沉淀,持续完善更新,有好的写法和需求,欢迎留言交流 ~

http://www.dtcms.com/a/315966.html

相关文章:

  • VR眼动追踪技术帮助医生更快速确认大脑神经损伤与疾病
  • MySQL索引底层原理与性能优化实践
  • JavaScript性能优化实战:从核心指标分析
  • “命令行过长“?一键解决 IntelliJ IDEA 中 Java/Spring Boot 启动失败问题
  • 武汉火影数字:VR大空间在文旅产业的创新应用
  • 7、Redis队列Stream和单线程及多线程模型
  • 二手房翻新时怎样装修省钱?
  • STM32H7+FreeRTOS+LwIP移植EtherCAT开源主站SOEM
  • 【AI论文】iLRM:一种迭代式大型3D重建模型
  • 3D 材质与纹理:让虚拟模型 “以假乱真” 的核心密码
  • Linux内核C语言代码规范
  • 解决IntelliJ IDEA 项目名称后带中括号问题(模块名不一致)
  • OpenGL状态机与对象管理:优化图形渲染的高效方法
  • 支持在电脑桌面悬挂的便利贴工具好用评测
  • LeetCode 面试经典 150_数组/字符串_H 指数(9_274_C++_中等)(排序后再进行判断)(计数)
  • 应用科普 | 漫谈6G通信的未来
  • Vue中使用步骤条Steps-手写简单的步骤条功能
  • 大模型下一个飞跃?OpenAI的“新突破”:通用验证器
  • FANCU发那科机器人双脉冲焊接省气
  • 解决英飞凌Tricore编译软件Tasking加载过慢编译卡死问题
  • Windows驱动更新下载工具,电脑硬件设备驱动程序自动安装下载更新,可备份还原!键盘鼠标声卡网卡显卡主板硬盘驱动都可以下载,免费使用的神器!
  • 从传统架构到创新安全:Web2.0与Web3.0的比较分析
  • 10-红黑树
  • Python--JSON格式
  • 艺术性与真实感并存:FLUX.1 Krea [dev] 开源模型速览
  • 复杂环境跌倒识别准确率↑31%!陌讯多模态算法在智慧养老的落地实践
  • 嵌入式硬件中运放内部底层分析
  • Java、Android及计算机基础面试题总结
  • Salesforce Hub-Spoke 架构介绍
  • LoRa基站和网关的区别