SQL刷题记录二

题目三 :SQL26 计算25岁以上和以下的用户数量

链接:计算25岁以上和以下的用户数量_牛客题霸_牛客网 (nowcoder.com)

问题分解:

简单 CASE函数

        是一种多分支的函数,可以根据条件列表的值返回多个可能的结果表达式中的一个。
可用在任何允许使用表达式的地方,但不能单独作为一个语句执行。
        分为:
                简单CASE函数
                搜索CASE函数

CASE 测试表达式
WHEN 简单表达式1 THEN 结果表达式1
WHEN 简单表达式2 THEN 结果表达式2 …
WHEN 简单表达式n THEN 结果表达式n
[ ELSE 结果表达式n+1 ]
END

问题解答(完整代码):

select case when age < 25 or age is null then "25岁以下"
            when age >=25 then "25岁及以上"
            end age_cut, count(*)number
from user_profile
group by age_cut;

题目四 :SQL27 查看不同年龄段的用户明细

链接:查看不同年龄段的用户明细_牛客题霸_牛客网 (nowcoder.com)

题目解答:

问题分解:

  • 限定条件:无;
  • 划分年龄段:数值条件判断,可以用多重if,不过更方便的是用case when [expr] then [result1]...else [default] end
  • 附:case when用法

答案:

  • select device_id , gender ,
    case 
        when age < 20 then '20岁以下'
        when age >= 20 and age <=24 then '20-24岁'
        when age >= 25 then '25岁及以上'
        else '其他'
    END as age_cut 
    from 
    user_profile;

题目五: SQL28 计算用户8月每天的练题数量

链接:计算用户8月每天的练题数量_牛客题霸_牛客网 (nowcoder.com)

问题分解:

  • 限定条件:2021年8月,写法有很多种,比如用year/month函数的year(date)=2021 and month(date)=8,比如用date_format函数的date_format(date, "%Y-%m")="202108"
  • 每天:按天分组group by date
  • 题目数量:count(question_id)

 答案:

select day(date) as day,
        count(question_id) as question_cnt
from question_practice_detail
where month(date) = 8 and year(date)=2021
group by date;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
当然,我可以为您介绍一下 SQL Server 的相关内容。SQL Server 是一种关系型数据库管理系统,用于存储和管理大量结构化数据。在过程中,您可以通过解决一系列与 SQL Server 相关的问来提高对其的理解和应用能力。 以下是一些常见的 SQL Server 方向和相关问: 1. SQL 基础知识: - 什么是 SQL Server?它有哪些特点和优势? - SQL Server 中的数据类型有哪些?它们分别用于存储什么类型的数据? - 如何创建数据库和表格? - 如何插入、更新和删除数据? - 如何使用 SELECT 语句查询数据? 2. 数据查询与筛 - 如何使用 WHERE 子句进行条件选? - 如何使用 ORDER BY 子句对查询结果进行排序? - 如何使用 GROUP BY 子句进行分组聚合操作? - 如何使用 HAVING 子句进行条件筛选(针对分组后的结果)? . 数据操作与修改: - 如何使用 UPDATE 语句修改表格中的数据? - 如何使用 DELETE 语句删除表格中的数据? - 如何使用 INSERT INTO 语句插入新的数据? 4. 数据连接与联结: - 如何使用 JOIN 连接多个表格? - 什么是内连接、外连接和交叉连接? - 如何使用子查询进行复杂的数据查询? 5. 数据聚合与统计: - 如何使用聚合函数(如 SUM、AVG、COUNT、MAX、MIN)进行数据统计? - 如何使用 GROUP BY 子句进行分组统计? - 如何使用 HAVING 子句进行条件筛选(针对分组后的统计结果)? 这些问只是 SQL Server 中的一部分,您可以根据自己的需求和水平选择适合的目进行练习。同时,还可以参考 SQL Server 官方文档、教程和在线资源来深入学习和提高技能。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值