SQL中的那点事,适用于sql爱好者与数据分析从业者(1-5)

1、关于!=和ifnull函数的运用

ifnull(referee_id,0)!=2

    在输出referee_id所有不等于2的值时,若referee_id中存在null值,直接使用 !=2输出则会过滤掉referee_id=null的值,因此,我们使用ifnull函数将referee_id=null的值变为0,在使用!=2即可实现输出referee_id所有不等于2的值。

2、LENGTH()和CHAR_LENGTH()的区别

char_length(str)

计算单位:字符,不管汉字还是数字或者是字母都算是一个字符。

length(str)

计算单位:字节 ,utf8编码:一个汉字三个字节,一个数字或字母一个字节。gbk编码:一个汉字两个字节,一个数字或字母一个字节。

因此,在实际sql中计算字符串长度时,若没有特殊说明,使用char_length(str)更好。

3、多表连接方法

表连接是数据库中用于将多个表关联起来的操作。通过表连接,可以在关联的表之间建立关系,并从中获取相关的数据。

常见的表连接操作有内连接、外连接和交叉连接。

  • 内连接(Inner Join):只返回两个表中满足连接条件的行。内连接需要指定连接条件,只有在连接条件成立的情况下,才会返回对应的行。
  • 外连接(Outer Join):返回两个表中满足连接条件的行,同时还包括未满足连接条件的行。外连接又分为左外连接(Left Join)、右外连接(Right Join)和全外连接(Full Join),根据需要选择合适的外连接类型。
  • 交叉连接(Cross Join):也称为笛卡尔积,返回两个表中所有可能的组合。交叉连接没有指定连接条件,会返回原始表的所有行组合。

通过表连接,可以根据共同的关键字段将数据进行关联,以便进行更复杂的查询和分析操作。

4、数据埋点时常用函数之时间戳和日期的转换

日期生成时间戳:

select unix_timestamp('2023-09-04 12:00:00')

时间戳转化为日期:

select from_unixtime(时间戳)

5、字符串与日期的转换函数

   str_to_date()字符串转日期函数:

select str_to_date('20230904','%y%m%d');

select str_to_date('2023年09月04日','%y年%m月%d日');

 date_format()字符串转日期函数:

select date_format('2023-09-04','%y年%m月%d日');

         好啦,今天的分享就到这里啦!若有任何疑问可以评论区或者后台私信我哦!也感谢大家的关注!我是全仔爱数分,下期见!

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值