SELECT
CASE
WHEN sc.score >= 110 THEN '[110, 120]'
WHEN sc.score >= 90 THEN '[90, 110)'
WHEN sc.score >= 60 THEN '[60, 90)'
ELSE '[0, 60)'
END AS score_range,
COUNT(*) AS num_students
FROM
students s
JOIN
scores sc ON s.student_id = sc.student_id
WHERE
sc.subject = '数学'
AND sc.exam_date = '2024-06-30'
GROUP BY
score_range
ORDER BY
score_range DESC;
SELECT
u.user_id,
DAYNAME(lr.start_time) AS day_of_week,
COUNT(*) AS listens_per_day
FROM
qqmusic_user_info u
JOIN
listen_rcd lr ON u.user_id = lr.user_id
GROUP BY
u.user_id, day_of_week
ORDER BY
u.user_id ASC, day_of_week ASC;
select *
from cmb_usr_trx_rcd
where usr_id = '5201314520' and
(date(trx_time) between '2024-06-08' and '2024-06-10' or
date(trx_time) between '2024-09-15' and '2024-09-17')
select *
from cmb_usr_trx_rcd
where usr_id = '5201314520' and
date(trx_time) between '2024-06-08' and '2024-06-10' or
date(trx_time) between '2024-09-15' and '2024-09-17'
select
city
,sum(case when con like '%雪%' then 1 else 0 end) as snowy_days
from
weather_rcd_china
where
month(dt) in (12,1,2)
group by
city
order by
2
desc
select
*
from
cmb_usr_trx_rcd
where
date(trx_time)
between '2024-09-01' and '2024-09-30'
and (
(hour(trx_time) >= 22)
or
(hour(trx_time) between 0 and 5)
)
and usr_id = '5201314520'
order by trx_time
select *
from cmb_usr_trx_rcd
where usr_id = '5201314520' and
date(trx_time) between'2024-09-01' and '2024-09-30'and
hour(trx_time) between'01:00:00' and '05:00:00'
select student_id,max(score) max_score, min(score) min_score, avg(score) avg_score
from scores
group by student_id
having min(score)>=80
order by student_id
select student_id,max(score) as max_score,min(score) as min_score,avg(score) as avg_score
from scores
group by student_id
having min(score)>=80
order by student_id
select student_id,max(score) as max_score,min(score) as min_score,avg(score) as avg_score
from scores
where score >80 or score is null
group by student_id
order by student_id desc
select student_id,max(score) as max_score,min(score) as min_score,avg(score) as avg_score
from scores
where score >80 or score is null
group by student_id
order by student_id asc
select student_id,max(score) as max_score,min(score) as min_score,avg(score) as avg_score
from scores
where score >80 or score is null
group by student_id