力扣数据库题库学习(4.25日)

1484. 按日期分组销售产品

问题链接
问题图片

思路与分析

编写解决方案找出每个日期、销售的不同产品的数量及其名称。
每个日期的销售产品名称应按词典序排列。
返回按 sell_date 排序的结果表。

我来分析一下,这里的题目要求其实就是统计不同日期下的销售产品数,以及产品名称,再指定排序方法。这道题考的就是数据库的分组,以及对分组内数据的处理,这道题使用了COUNT,GROUP_CONCAT关键字。
这个要求我们可以使用分组实现,再加上COUNT(DISTINCT product)统计每组内不重复的product数据量,使用GROUP_CONCAT将product字段链接,要求的排序ORDER BY product ASC即可

解答

sql语句如下:

SELECT 
    sell_date,
    COUNT(DISTINCT product) AS num_sold,
    GROUP_CONCAT(DISTINCT product ORDER BY product ASC) AS products
FROM 
    Activities
GROUP BY 
    sell_date
ORDER BY 
    sell_date;

1517. 查找拥有有效邮箱的用户

问题链接
问题图片

思路与分析

编写一个解决方案,以查找具有有效电子邮件的用户。
一个**有效的电子邮件具有前缀名称和域**,其中:
前缀 名称是一个字符串,可以包含字母(大写或小写),数字,下划线 '_' ,点 '.' 和/或破折号 '-' 。前缀名称   	必须 以字母开头。
域 为 '**@leetcode.com**' 。
以任何顺序返回结果表。

这道题其实考的就是数据库的WHERE针对字段的匹配以及正则的使用,这里我们可以使用 REGEXP 关键字匹配符合指定模式的电子邮件地址。
这里的正则表达式:

'^[a-zA-Z][a-zA-Z0-9_.-]*@leetcode\\.com$'

完整的代码如下

解答

SELECT user_id,name,mail
FROM Users
WHERE mail REGEXP '^[a-zA-Z][a-zA-Z0-9_.-]*@leetcode\\.com$';

相关推荐

  1. 数据库题库学习(5.6)--1683. 无效的推文

    2024-04-28 19:56:03       19 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-04-28 19:56:03       19 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-04-28 19:56:03       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-04-28 19:56:03       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-04-28 19:56:03       20 阅读

热门阅读

  1. CMUS狮身人面像(三)-建立一个语音词典

    2024-04-28 19:56:03       14 阅读
  2. 监控服务进程并自动重启 monitor

    2024-04-28 19:56:03       10 阅读
  3. ABAP 常用的日期相关的函数

    2024-04-28 19:56:03       11 阅读
  4. 设计模式之创建型模式总结

    2024-04-28 19:56:03       12 阅读
  5. C++并发编程 - 线程管理

    2024-04-28 19:56:03       9 阅读
  6. DreamFusion:深入解读其原理、功能与应用

    2024-04-28 19:56:03       12 阅读
  7. 一种基于LLM的辅助教学方法与流程

    2024-04-28 19:56:03       10 阅读