SQL
字符串截取函数
SUBSTRING_INDEX(string, delimiter, number)
substring(字符,开始位置,长度)
参数值
参数 | 描述 |
---|---|
string | 必需。原字符串 |
delimiter | 必需。要搜索的分隔符 |
number | 必需。 搜索delimiter可以是正数或负数。 如果它是一个正数,这个函数返回所有到delimiter的左边。 如果是负数,这个函数返回delimiter右边的所有。 |
实例
SELECT SUBSTRING_INDEX("www.w3schools.com", ".", 1);
#结果:www
SELECT SUBSTRING_INDEX("www.w3schools.com", ".", 2);
# 结果:www.w3schools
累加:SUM() OVER() 函数
作用:计算同时在线人数
点击查看代码
#----------------------------第一步---------------------------
with
temp as (
select
course_id,
course_name,
user_id,
in_datetime as dt,
1 as flag
from
attend_tb a
join course_tb b using (course_id)
union
select
course_id,
course_name,
user_id,
out_datetime as dt,
-1 as flag
from
attend_tb a
join course_tb b using (course_id)
)
#----------------------------第二步---------------------------
select
course_id,
course_name,
max(num) as max_num
from
(
select
course_id,
course_name,
sum(flag) over (
partition by
course_id
order by
dt
) as num
from
temp
) t1
group by
course_id,
course_name
order by
course_id