• MySQL中的通配符


    在 SQL 中,可使用以下通配符:

    通配符描述
    % 替代一个或多个字符
    _ 仅替代一个字符
    [charlist] 字符列中的任何单一字符

    [^charlist]

    或者

    [!charlist]

    不在字符列中的任何单一字符

    原始的表 (用在例子中的):

    Persons 表:

    IdLastNameFirstNameAddressCity
    1 Adams John Oxford Street London
    2 Bush George Fifth Avenue New York
    3 Carter Thomas Changan Street Bei_jing

    1.使用 % 通配符

    例子 (1)

    现在,我们希望从上面的 "Persons" 表中选取居住在以 "Ne" 开始的城市里的人:

    我们可以使用下面的 SELECT 语句:

    SELECT * FROM Person WHERE City LIKE  'Ne%'

    例子 (2)

    我们希望从 "Persons" 表中选取居住在包含 "lond" 的城市里的人:

    我们可以使用下面的 SELECT 语句:

    SELECT * FROM Persons WHERE  City LIKE  '%lond%'

    2.使用 _ 通配符

    例子 (1)

    现在,我们希望从上面的 "Persons" 表中选取名字的第一个字符之后是 "eorge" 的人:

    我们可以使用下面的 SELECT 语句:

    SELECT * FROM Persons WHERE FisrstName LIKE  '_eorge'

    例子 (2)

    接下来,我们希望从 "Persons" 表中选取的这条记录的姓氏以 "C" 开头,然后是一个任意字符,然后是 "r",然后是任意字符,然后是 "er":

    我们可以使用下面的 SELECT 语句:

    SELECT * FROM Persons  WHERE LastName LIKE 'C_r_er'

    例子 (3)

    现在我们看到第三个人的地址北京中有字符_, 我们希望从 "Persons" 表中选取第4个字符是_的记录,此时遇到问题就是_字符是通配符,我们的做法就是使用转移字符。

    第一种方法:SELECT * FROM Persons WHERE  City LIKE  '___\_%'
    第二种方法:SELECT * FROM Persons WHERE  City LIKE  '___$_%  ESCAPE '$''

    3.使用 [charlist] 通配符

    例子 (1)

    现在,我们希望从上面的 "Persons" 表中选取居住的城市以 "A" 或 "L" 或 "N" 开头的人:

    我们可以使用下面的 SELECT 语句:

    SELECT * FROM Persons WHERE City LIKE '[ALN]%'

    例子 (2)

    现在,我们希望从上面的 "Persons" 表中选取居住的城市不以 "A" 或 "L" 或 "N" 开头的人:

    我们可以使用下面的 SELECT 语句:

    SELECT * FROM Persons WHERE City LIKE '[!ALN]%'
  • 相关阅读:
    一起学Python:协程
    一起学Python:字符串介绍
    一起学Python:列表介绍
    一起学Python:字典介绍
    一起学Python:元组
    函数介绍
    函数参数和函数返回值
    CodeForces 680A&680B&680C&680D Round#356
    POJ 3481 set水过
    BZOJ 1037 生日聚会 DP
  • 原文地址:https://www.cnblogs.com/zwj-199306231519/p/13983095.html
Copyright © 2020-2023  润新知