SQL正则查询--查询有效邮箱
⽤户表: Users
+---------------+---------+
| Column Name | Type |
+---------------+---------+
| user_id | int |
| name | varchar |
| mail | varchar |
+---------------+---------+
user_id (⽤户 ID)是该表的主键。
这个表包含⽤户在某⽹站上注册的信息。有些邮箱是⽆效的。
查询格式如下所⽰:
匹配邮箱的正则表达式Users
+---------+-----------+-------------------------+
| user_id | name      | mail                    |
+---------+-----------+-------------------------+
| 1      | Winston  | winston@leetcode    |
| 2      | Jonathan  | jonathanisgreat        |
| 3      | Annabelle | bella-@leetcode    |
| 4      | Sally    | sallye@leetcode |
| 5      | Marwan    | quarz#2020@leetcode |
| 6      | David    | david69@gmail      |
| 7      | Shapiro  | .shapo@leetcode    |
+---------+-----------+-------------------------+
结果表:
+---------+-----------+-------------------------+
| user_id | name      | mail                    |
+---------+-----------+-------------------------+
| 1      | Winston  | winston@leetcode    |
| 3      | Annabelle | bella-@leetcode    |
| 4      | Sally    | sallye@leetcode |
+---------+-----------+-------------------------+
2 号⽤户的邮箱没有域名。
5 号⽤户的邮箱包含⾮法字符 #。
6 号⽤户的邮箱的域名不是 leetcode。
7 号⽤户的邮箱以句点(.)开头。
写⼀条 SQL 语句,查询拥有有效邮箱的⽤户。
有效的邮箱包含符合下列条件的前缀名和域名:
前缀名是包含字母(⼤写或⼩写)、数字、下划线 '_'、句点 '.' 和/或横杠 '-' 的字符串。前缀名必须以字母开头。域名是 '@leetcode' 。
按任意顺序返回结果表。
SELECT*FROM users
WHERE mail REGEXP BINARY'^[a-zA-Z][\\w_\\./\\-]*@leetcode$'
SQL中正则表达式使⽤函数REGEXP  BINARY 或者 REGEXP
  REGEXP  BINARY在匹配时区分⼤⼩写
  REGEXP 在匹配时不区分⼤⼩写

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。