学习sql

1. 匹配字符串

以A开头:select * from table where name like ‘A%’
以A结尾:select * from table where name like ‘%A’
包含A:select * from table where name like ‘%A%’

2. 手撕sql

1 . 写sql语句,一个表有一个字段age,写sql查出age<3,先根据age字段分组,求id最大的那个数据。
在这里插入图片描述

select max(id) from yue where age<3  group by age;

在这里插入图片描述

2 . 查询出播放量最高的视频
在这里插入图片描述

mysql> select m_id from movie group by m_id order by count(m_id) desc limit 1;

2 . 1 查询出播放量前三的视频

mysql> select m_id from movie group by m_id order by count(m_id) desc limit 3;

2 . 2 查询出播放量第二高的视频

mysql> select m_id from movie group by m_id order by count(m_id) desc limit 1,1;

3. 索引的创建

create unique index S#_index on S(S#);

=========================================================

以下是工作之后在学习sql方面的记录

主要是对postgresql数据库的操作

case when语句,用于计算条件列表并返回多个可能结果表达式之一

CASE input_expression
WHEN when_expression THEN
    result_expression [...n ] [
ELSE
    else_result_expression
END
不同时区之间的转换,cct表示中国沿海时间(北京时间),pst表示(美国)太平洋标准时间

select 列名(日期) at time zone 'cct' as time from 表名; 
decode() 函数就是将某个字段进行判断,并根据条件,将符合条件的值返回
# condition是要判断条件的字段,如果condition的值于key1相同,则结果返回value1,如果condition的值于key2相同,则结果返回value2,如果key3…,如果都不匹配的话,这返回的结果为最后一个,及default位置的值。

decode(condition,key1,value1,key2,value2,key3,value3,...,default)
#string:指定的要截取的字符串
#start:规定在字符串的何处开始
#length:指定要截取的字符串长度
substr(string, start, length) # 截取字符串的内容


instr('源字符串' , '目标字符串' ,'开始位置','第几次出现'#截取的字符串在源字符串中的“位置”

# string:需要进行正则处理的字符串
# pattern:进行匹配的正则表达式
# position:起始位置,从字符串的第几个字符开始正则表达式匹配(默认为1) 注意:字符串最初的位置是1而不是0
# occurrence:获取第几个分割出来的组(分割后最初的字符串会按分割的顺序排列成组)
# modifier:模式(‘i’不区分大小写进行检索;‘c’区分大小写进行检索。默认为’c’)针对的是正则表达式里字符大小写的匹配

REGEXP_SUBSTR(String, pattern, position, occurrence, modifier)

trunc( number, [ decimal_places ] ) # 返回一个数截断到一定的小数位数

lpad(number,一共需要的位数,填充的数字) #
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值