zoukankan      html  css  js  c++  java
  • SQL正则查询--查询有效邮箱

    用户表: 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     |

    +---------+-----------+-------------------------+

    结果表:

    +---------+-----------+-------------------------+

    | 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 语句,查询拥有有效邮箱的用户。

    有效的邮箱包含符合下列条件的前缀名和域名:

    前缀名是包含字母(大写或小写)、数字、下划线 '_'、句点 '.' 和/或横杠 '-' 的字符串。前缀名必须以字母开头。
    域名是 '@leetcode.com' 。
    按任意顺序返回结果表。

    SELECT * FROM users
    WHERE mail REGEXP BINARY '^[a-zA-Z][\w_\./\-]*@leetcode.com$'

     SQL中正则表达式使用函数REGEXP  BINARY 或者 REGEXP

    •   REGEXP  BINARY在匹配时区分大小写
    •   REGEXP 在匹配时不区分大小写



  • 相关阅读:
    SolarWinds Orion API 远程代码执行漏洞(CVE-2020-10148)
    Lanproxy 路径遍历漏洞 (CVE-2021-3019)
    公众号文章集合-2020整理回顾
    PHPMailer远程命令执行漏洞复现
    SaltStack Shell 注入 (CVE-2020-16846)漏洞
    (CVE-2020-7961)Liferay Portal RCE 反序列化命令执行漏洞
    (CVE-2020-17530)Struts2 S2-061 远程命令执行漏洞复现
    ora-01722 无效数字
    公开课平台推荐
    PL/SQL Developer如何导出数据成sql的insert语句
  • 原文地址:https://www.cnblogs.com/sycl/p/14239832.html
Copyright © 2011-2022 走看看