LeetCode:Database 108.查找拥有有效邮箱的用户
Posted Xiao Miao
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LeetCode:Database 108.查找拥有有效邮箱的用户相关的知识,希望对你有一定的参考价值。
要求:写一条 SQL 语句,查询拥有有效邮箱的用户。
有效的邮箱包含符合下列条件的前缀名和域名:
- 前缀名是包含字母(大写或小写)、数字、下划线 ‘_’、句点 ‘.’ 和/或横杠 ‘-’ 的字符串。前缀名必须以字母开头,域名是 ‘@leetcode.com’ 。
用户表: Users的结构
+---------------+---------+
| Column Name | Type |
+---------------+---------+
| user_id | int |
| name | varchar |
| mail | varchar |
+---------------+---------+
user_id (用户 ID)是该表的主键。
这个表包含用户在某网站上注册的信息。有些邮箱是无效的。
Users 表:
+---------+-----------+-------------------------+
| user_id | name | mail |
+---------+-----------+-------------------------+
| 1 | Winston | winston@leetcode.com |
| 2 | Jonathan | jonathanisgreat |
| 3 | Annabelle | bella-@leetcode.com |
| 4 | Sally | sally.come@leetcode.com |
| 5 | Marwan | quarz#2020@leetcode.com |
| 6 | David | david69@gmail.com |
| 7 | Shapiro | .shapo@leetcode.com |
+---------+-----------+-------------------------+
Result Table:
+---------+-----------+-------------------------+
| user_id | name | mail |
+---------+-----------+-------------------------+
| 1 | Winston | winston@leetcode.com |
| 3 | Annabelle | bella-@leetcode.com |
| 4 | Sally | sally.come@leetcode.com |
+---------+-----------+-------------------------+
2 号用户的邮箱没有域名。
5 号用户的邮箱包含非法字符 #。
6 号用户的邮箱的域名不是 leetcode。
7 号用户的邮箱以句点(.)开头。
SQL语句:
#1.方法1
select user_id,name,mail
from users
where mail regexp '^[a-zA-Z][\\\\w./-]*@leetcode[.]com$';
#2.方法2
select user_id,name,mail
from users
where mail regexp '^[a-zA-Z][a-zA-Z0-9_./-]*@leetcode[.]com$';
以上是关于LeetCode:Database 108.查找拥有有效邮箱的用户的主要内容,如果未能解决你的问题,请参考以下文章
LeetCode:Database 95.查找成绩处于中游的学生