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

sql学习笔记(三)

目录

1.四舍五入

2.向上取整

3.向下取整

4.Hive 分区

5.case when条件语句

6.日期函数

7.字符串函数

8.窗口函数

1️⃣排序函数


1.四舍五入

round

select round(3.14) —>3
2.向上取整

ceiling

select ceiling(12.15) —>13
3.向下取整

floor

select floor(12.56) —>12
4.Hive 分区

随着系统运行时间的增加,表的数据量会越来越大,而Hive查询数据的数据的时候通常使用的是「全表扫描」,这样将会导致大量不必要的数据进行扫描,从而查询效率会大大的降低。 从而Hive引进了分区技术,使用分区技术,「避免Hive全表扫描,提升查询效率」

5.case when条件语句

注:不要忘记写then和end。

语法一:

CASE 字段 WHEN1 THEN1[WHEN2 THEN2]*[ELSE 值] END 

语法二:

CASE WHEN 条件表达式 THEN1[WHEN 条件表达式 [and or] 条件表达式THEN2]*[ELSE 值] END 
6.日期函数

链接🔗:https://www.cnblogs.com/ShadowFiend/p/12888055.html

1️⃣date_format

释义:格式化日期

用法:date_format(date,格式)

2️⃣date_add

释义:日期加法函数,数字为正,则加多少天,若数字为负数,则为减多少天;

用法:date_add(date,number);

3️⃣date_sub

释义:日期减法函数,数字为正,则减多少天,若数字为负数,则为加多少天

用法:date_sub(date,number)

4️⃣datediff

释义:日期比较函数,第一个日期减去第二个时期数字,为正,则前者大于后者,为负,则前者小于后者;

用法:datediff(date1,date2)

5️⃣current_timestamp

释义:获取当前时间

6️⃣current_date

释义:获取当前日期

7️⃣to_date

释义:转日期函数,默认转为yyyy-MM-dd格式

用法:to_date(time)

8️⃣year

释义:获取时间的年份

用法:year(date)

9️⃣month

释义:获取时间的月份

用法:month(date)

🔟day

释义:获取时间的天

用法:day(date)

11.Trunc

TRUNC(NUMBER)表示截断数字,TRUNC(date)表示截断日期

-返回当月的第一天

select trunc('2016-08-16','MM') --2016-08-01

-返回当年的第一天

select trunc('2016-08-16','YEAR') --2016-01-01

时间戳与日期函数转化

7.字符串函数

链接🔗:https://blog.csdn.net/qq_44011386/article/details/108364509

  1. 转换数据类型Cast
  2. 拼接字符串concat(string A, string B…)
  3. 带连接符的拼接字符串concat_ws(string SEP, string A, string B…)
  4. 翻转字符串reverse(string A)
  5. 字符串长度length(string A)
  6. 截取字符串substr(string A, int start),substring(string A, int start)
  7. 截取字符串substr(string A, int start, int len),substring(string A, int start, int len)
  8. 转换为大写upper(string A) ucase(string A)
  9. 转换为小写lower(string A) lcase(string A)
  10. 去除空格trim(string A)
  11. 去除左边电空格ltrim(string A)
  12. 去除右边空格rtrim(string A)
  13. 正则表达式提取字符串regexp_extract(string subject, string pattern, int index)
  14. 从链接中提取部分parse_url(url, partToExtract[, key]) - extracts a part from a URL
  15. get_json_object(string json_string, string path)
  16. 分割字符串split(string str, string pat)
8.窗口函数
<窗口函数> OVER ([PARTITION BY <列清单>] ORDER by <排序用列清单>)
1️⃣row_number/rank/dense_rank函数

row_number

rank

dense_rank

2️⃣lag/lead函数

​​​​​​​​​​​​​​SQL中lag()和lead()函数使用_lag函数-CSDN博客

LAG

LEAD

3️⃣MySQL数据库查询时间段的两种方法

between and和 "><符号"

链接🔗:查询某时间范围内的数据SQL语句_sql查询时间段内的数据-CSDN博客

9. with as用法

可看作是生成一个临时表,后续可调用

相关文章:

  • menuTreeRef.value?.getCheckedKeys(true) as string[]
  • mysql根据条件导出表数据(`--where=“文本“`)
  • vue 项目的屏幕自适应方案
  • wpf Grid布局详解 `Auto` 和 `*` 是两种常见的设置方式 行或列占多个单元格,有点像excel里的合并单元格。使其余的列平均分配剩余的空间
  • C# set的一些使用方法
  • 提升ChatGPT答案质量和准确性的方法Prompt专家
  • react_11
  • 消息中间件-RabbitMQ介绍
  • 机器人伺服驱动控制环
  • python爬虫(数据获取——selenium)
  • 【css】sass中的模块化
  • Jmeter_逻辑控制器
  • JavaScript继承的几种方式
  • Python中 lambda 的妙用
  • 昇腾CANN 7.0 黑科技:DVPP硬件加速训练数据预处理,友好解决Host CPU预处理瓶颈
  • JavaScript 如何正确处理 Unicode 编码问题!
  • .pyc 想到的一些问题
  • 【162天】黑马程序员27天视频学习笔记【Day02-上】
  • 【MySQL经典案例分析】 Waiting for table metadata lock
  • 【跃迁之路】【477天】刻意练习系列236(2018.05.28)
  • gitlab-ci配置详解(一)
  • 从零到一:用Phaser.js写意地开发小游戏(Chapter 3 - 加载游戏资源)
  • 开发了一款写作软件(OSX,Windows),附带Electron开发指南
  • 利用DataURL技术在网页上显示图片
  • 使用前端开发工具包WijmoJS - 创建自定义DropDownTree控件(包含源代码)
  • 微信小程序开发问题汇总
  • Spring Batch JSON 支持
  • #我与Java虚拟机的故事#连载02:“小蓝”陪伴的日日夜夜
  • #我与Java虚拟机的故事#连载12:一本书带我深入Java领域
  • (173)FPGA约束:单周期时序分析或默认时序分析
  • (2)(2.10) LTM telemetry
  • (Arcgis)Python编程批量将HDF5文件转换为TIFF格式并应用地理转换和投影信息
  • (HAL库版)freeRTOS移植STMF103
  • (pojstep1.3.1)1017(构造法模拟)
  • (Redis使用系列) SpringBoot 中对应2.0.x版本的Redis配置 一
  • (非本人原创)我们工作到底是为了什么?​——HP大中华区总裁孙振耀退休感言(r4笔记第60天)...
  • (分享)一个图片添加水印的小demo的页面,可自定义样式
  • (附源码)spring boot北京冬奥会志愿者报名系统 毕业设计 150947
  • (附源码)ssm高校运动会管理系统 毕业设计 020419
  • (附源码)ssm高校志愿者服务系统 毕业设计 011648
  • (附源码)小程序 交通违法举报系统 毕业设计 242045
  • (一一四)第九章编程练习
  • .bat批处理(三):变量声明、设置、拼接、截取
  • .bat批处理(一):@echo off
  • .NET 4 并行(多核)“.NET研究”编程系列之二 从Task开始
  • .Net Framework 4.x 程序到底运行在哪个 CLR 版本之上
  • .NET I/O 学习笔记:对文件和目录进行解压缩操作
  • .NET 除了用 Task 之外,如何自己写一个可以 await 的对象?
  • .NET 动态调用WebService + WSE + UsernameToken
  • .NetCore Flurl.Http 升级到4.0后 https 无法建立SSL连接
  • .NET命令行(CLI)常用命令
  • @31省区市高考时间表来了,祝考试成功
  • @data注解_一枚 架构师 也不会用的Lombok注解,相见恨晚
  • [2010-8-30]
  • [Android Pro] listView和GridView的item设置的高度和宽度不起作用