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

SQL刷题日志(day2)

1、timestampdiff:计算时间间隔

timestampdiff(unit,start_date,end_date)

参数说明:

  • unit:返回的时间单位,如minute,hour等
  • start_date:开始日期
  • end_date:结束日期

2、dense_rank():对数据进行排名

dense_rank() over (partition by column order by column)

参数说明:

  • partition by column:可选参数,用于定义如何将结果集划分为不同的组。每个组内的行将独立进行排名。
  • order by column:必需参数,用于定义窗口函数内部的排序规则

!!!与row_number()联系与区别:

联系:

  • 两者都是窗口函数,可以在不改变原始数据集的情况下,为每一行生成一个序号。
  • 都可以使用 OVER() 子句来定义窗口的排序规则和分区。
  • 都可以在查询结果中为每一行生成一个唯一的标识符,用于进一步的分析或操作。

区别:

  • dense_rank():为每一行分配一个排名,如果行的值相同,它们将获得相同的排名
  • row_number():为每一行分配一个唯一的连续整数,即使某些行的值相同,它们的序号也会不同

3、ifnull():为缺失数据赋值

ifnull(column_name,0)

参数说明:column_name:若值为null,则置为0

4、coalesce():为缺失数据指定默认值

coalesce(column_name,0)--将Null值视为0

5、floor():向下取整

floor(number):取小于等于数值number的最小整数(向下取整)
--如:floor(12.45)返回12

拓展:

  • ceiling(number):取大于等于数值n的最小整数(向上取整)
  • round(number):四舍五入到指定的小数位数。如果没有指定小数位数,则默认四舍五入到整数。
  • truncate(number,2):截断数值到指定的小数位数,不进行四舍五入(如truncate(123.456, 2) 返回 123.45(截断到小数点后两位)

相关文章:

  • 【AI】IDEA 集成 AI 工具的背景与意义
  • 一个基于Django的写字楼管理系统实现方案
  • C/C++---头文件保护机制
  • Spring Boot整合Kafka的详细步骤
  • 局域网内Docker镜像共享方法
  • 【李宏毅深度学习——分类模型的PyTorch架构】Homework 2:Phoneme Classification
  • Docker镜像迁移指南:从Windows构建到Ubuntu运行
  • halcon模板匹配(五)find_shape_model_clutter
  • Jetpack Compose 跨组件通信:全面指南与最佳实践
  • 数据库勒索病毒威胁升级:企业数据安全防线如何用安当RDM组件重构
  • 光刻机研发与市场现状分析报告
  • 关于k8s的部署
  • shell 编程之正则表达式与文本处理器
  • 【Web API系列】Web Shared Storage API之WorkletSharedStorage深度解析与实践指南
  • 下篇:《高阶排序算法:分治思想与性能突破》
  • 在多系统环境中实现授权闭环,Tetra Pak 借助CodeMeter打造食品工业的安全自动化体系
  • 使用 Azure AKS 保护 Kubernetes 部署的综合指南
  • 使用 PyTorch 构建 UNet 图像去噪模型:从数据加载到模型训练的完整流程
  • C++ 文件操作(文本文件)
  • 【Android学习记录】工具使用
  • 塘厦仿做网站/镇江搜索优化技巧
  • 网站建设与网页设计难学吗/2023第二波疫情已经到来
  • 做网站 广告费 步骤/全网搜索软件
  • 做网站wordpress/专业的seo外包公司
  • 中国建设特种作业操作证网官方网站/常德政府网站
  • 网站建设要固定ip网络吗/网络公司经营范围