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 在匹配时不区分大小写



  • 相关阅读:
    代码生成器所用到的东西
    被float.parse吃掉的0.03...
    Microsoft Visual Studio 2010 Ultimate ISO 官方下载地址
    关于.net实现网站模板机制(非标签替换)
    关于ACCESS的事务与存储过程的调用
    关于如何实现左中右三栏布局, 左右固定宽度,中间随屏幕自适应
    几个台湾优秀个人博客网站
    [转]MathType常见问题
    Qt中int转换成QString
    fatal error C1189: #error : The C++ Standard Library forbids macroizing keywords. Enable warning C4005 to find the forbidden macro.
  • 原文地址:https://www.cnblogs.com/sycl/p/14239832.html
Copyright © 2011-2022 走看看