在SQL中,LIKE是什么意思?

在SQL中,LIKE是什么意思?,sql,Sql,考虑以下因素:像[ae][^m-z]% 这是什么意思?在WHERE子句中使用LIKE运算符来搜索列中的指定模式(在您的例子中,regex[ae][^m-z]) 例如,以下语句: SELECT randomCharacters FROM generated WHERE names LIKE [ae][^m-z]% 可以从列随机字符中生成的表返回结果,其值与SQL正则表达式匹配。(特别强调SQL)查看: [ae]表示a或e [^m-z]表示不在m到z %表示任意数量的字符 “以a或e开头,第二

考虑以下因素:
像[ae][^m-z]%


这是什么意思?

WHERE
子句中使用
LIKE
运算符来搜索列中的指定模式(在您的例子中,regex
[ae][^m-z]

例如,以下语句:

SELECT randomCharacters FROM generated WHERE names LIKE [ae][^m-z]%
可以从列
随机字符
中生成的表
返回结果,其值与SQL正则表达式匹配。(特别强调SQL)

查看:

  • [ae]
    表示
    a
    e
  • [^m-z]
    表示不在
    m
    z
  • %
    表示任意数量的字符
“以
a
e
开头,第二个字符不是从
m
z
范围内的字母,后面跟任何字符(完全不包括任何字符)

以下是证据:

declare @myTable table (StringColumn varchar(50))
insert into @myTable (StringColumn) Values 
    ('e%'), ('abc'), ('abcdef$$$'), ('ab%'), ('ab'), ('AA'),   --these ones match
    ('ba%'), ('an%'), ('GG')                                   --these ones don't
    
select * from @myTable where StringColumn  like '[ae][^m-z]%'
结果如下:

-------------------
| StringColumn    |
-------------------
| e%              |
| abc             |
| abcdef$$$       |
| ab%             |
| ab              |
| AA              |
-------------------

< >新的表格格式化似乎不喜欢我./p>因特网有一些好的搜索工具。考虑搜索“类似SQL的表达式”(没有引号)。它可能会带你去看“参数”。这不是一个经典的“正则表达式”。“,但它与您使用的数据库非常接近。该代码不是有效的ANSI SQL。您使用的是哪种数据库管理系统?应该是不言自明的,以帮助破译RegExIt不是一个经典的正则表达式,它是一个类似SQL的表达式(
%
表示任何类型的0个或更多字符)。不,它可以返回
e%
abc
abcdef$$$
甚至
ab%
。但是
%
的重要性与
*
在正则表达式中的重要性相同,不需要引号吗?