SQL-方法-语法

SQL中的join

如图所示:
在这里插入图片描述

方法:

方法名:find_in_set
集合查找函数: find_in_set
返回值: int
说明: 返回str在strlist第一次出现的位置,strlist是用逗号分割的字符串。如果没有找该str字符,则返回0
举例:

select find_in_set(“aa”, “aq,aa,d”) limit 10000 返回的是2, 因为aa字符串在第2个位置处

select find_in_set(“as”, “aq,aa,d”) limit 10000 返回的是0, 因为as字符串没有找到

这个方法坑的地方是在第2个参数中,用逗号连接要匹配的字符串,切记中间不能有空格,只能是逗号连接。如果是下面的形式就匹配不出来:

select find_in_set(“aa”, “aq, aa, d”) limit 10000 这是错误形式


方法名:nvl
作用:NVL(expr1, expr2) 空值转换
如果expr1 为NULL, 则使用expr2值; 如果不是NULL, 则使用expr1。

注意:适用于数字型、字符型和日期型,但是 expr1和expr2的数据类型必须为同类型。
举例:

select nvl(name, “name is NULL”) LIMIT 1000

方法名:split
作用:切分字符串
举例:

select split(“as_ss”, ‘_’)[0] limit 900 切分后的索引是从0开始的

sql中 with as 用法

sql中的with as 语句相当于建立临时表或者sql片段,下面的语句中可以复用
针对一个别名:
with tmp as (select * from table_name)

多个别名:
with
tmp1 as (select * from table_name1)
tmp2 as (select * from table_name2)
tmp3 as (select * from table_name3)

with语句的有点:
(1)可读性高
(2)with子查询只执行一次,结果存在临时表空间中,可以多次引用,增强性能。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值