模式匹配的简单问题

Jain123 2003-05-09 12:58:21
WHERE ColumnA LIKE '%5/%%' ESCAPE '/'
这句实在是看不懂,大家给解释解释行吗?
越详细越好,初学看不明白啊
谢谢了^_^
...全文
44 12 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
Jain123 2003-05-09
  • 打赏
  • 举报
回复
这么多解释,明白啦
谢谢大家!
joygxd 2003-05-09
  • 打赏
  • 举报
回复
不包含/的所有数据
joygxd 2003-05-09
  • 打赏
  • 举报
回复
查找带有“5%”的字串
愉快的登山者 2003-05-09
  • 打赏
  • 举报
回复
查找带有“5%”的字串,如:“111aaa5%bbb222".
ESCAPE '/'的意思是:将'/'后面的"%"不作为模式匹配字符,而是实际的%。

psxfghost 2003-05-09
  • 打赏
  • 举报
回复
Jain123(朋克^_^) :对头,就是那个意思!
^_^
CrazyFor 2003-05-09
  • 打赏
  • 举报
回复
ESCAPE 'escape_character'
允许在字符串中搜索通配符而不是将其作为通配符使用。escape_character 是放在通配符前表示此特殊用途的字符。


通配符 描述 示例
% 包含零个或更多字符的任意字符串。 WHERE title LIKE '%computer%' 将查找处于书名任意位置的包含单词 computer 的所有书名。
_(下划线) 任何单个字符。 WHERE au_fname LIKE '_ean' 将查找以 ean 结尾的所有 4 个字母的名字(Dean、Sean 等)。
[ ] 指定范围 ([a-f]) 或集合 ([abcdef]) 中的任何单个字符。 WHERE au_lname LIKE '[C-P]arsen' 将查找以arsen 结尾且以介于 C 与 P 之间的任何单个字符开始的作者姓氏,例如,Carsen、Larsen、Karsen 等。
[^] 不属于指定范围 ([a-f]) 或集合 ([abcdef]) 的任何单个字符。 WHERE au_lname LIKE 'de[^l]%' 将查找以 de 开始且其后的字母不为 l 的所有作者的姓氏。
yoki 2003-05-09
  • 打赏
  • 举报
回复
说得通俗点就是
like '%5%'这种形式你一定明白,不用多说
ESCAPE 你可以看作一个标志
ESCAPE '/'说明 '/'后面的那个字符'%'是当作一个普通字符处理的
即'/'后的那个'%'并不是当作模式匹配字符而值当作'%'字符本身
所以 like '%5/%%' escape '/'表示的含义是包含'5%'的任意字符串
如:5%;125%,5%1;125%%,%125%,125%dd等
不知道这样说你明白没有?
Jain123 2003-05-09
  • 打赏
  • 举报
回复
楼上的意思是不是:匹配含有5%的但是其中不包含/的所有数据?
ben988211 2003-05-09
  • 打赏
  • 举报
回复
使用 ESCAPE 关键字定义转义符。在模式中,当转义符置于通配符之前时,该通配符就解释为普通字符。例如,要搜索在任意位置包含字符串 5% 的字符串,请使用:
WHERE ColumnA LIKE '%5/%%' ESCAPE '/'

psxfghost 2003-05-09
  • 打赏
  • 举报
回复
用/转义是因为单独用%在sql中表示匹配任何字符的意思,所以要加/,使它仅仅表示%这个字符
xiyahui 2003-05-09
  • 打赏
  • 举报
回复
呵呵这里/作为转义字符存在了也就是说所有/后面跟的模式匹配字符都不在代表模式匹配字符而代表原字符。
这个表示的含义是包含5%的任意字符串。
psxfghost 2003-05-09
  • 打赏
  • 举报
回复
在sql中,用like时,%表示可以匹配任何字符,/是转义符,相当于匹配含有5%的任何数据
用escape 是不包含字串,这里是不包含'/'的数据
用于windows下面的vim编辑器。 给喜欢vim的人使用。详细如下: 好吧,详细点,这里写出一些基本的命令: 【什么是vi】 vi就是linux命令行下的最著名的编辑器之一,(编辑器就是类似windows记事本的功能,不过vi功能比记事本强大无限倍!^_^),现在实际使用的都是vim,它是vi的改进版本,所以现在的vi基本上就是vim了。 【vi能做什么】 第一个功能不用多说,vi可以编辑文本文件。至于其他的功能,多得无法列举,我只说我所知的一些典型的功能应用: (1)编辑文本文件 (2)方便地阅读程序源代码 (3)当文件目录浏览器来用 (4)提供编程、调试环境 (5)利用vi执行一些脚本文件(vi有自己的脚本文件语法) (x)等等等等...... 【vi的操作模式】   vi具有两种基本模式,为输入模式(或插入模式、编辑模式)和指令模式(或命令模式)。输入模式下输入字符,文本就会显示在屏幕上;而指令模式下输入字符就解释为一个输入命令并执行,而不会显示相应的字符。理解指令模式最简单方式就是想象平时剪切、复制以及粘贴数据时所发生的情况。 使用[Esc]键可以停止当前操作(插入或者命令)重新回到指令模式,准备接受新的指令。如果本来就在指令模式下面,将会响铃一下。 【最基本的使用】 这里提供了使用vi得最基本的操作,能够实现大多数的编辑目的。如果你肯花几分钟把“最基本的使用”的内容都实践一下,那么你至少可以独立地在vim中朝你想要得方向“前进”了。如果你不想学习,那么就把它当作一个“字典”吧。 *用vi打开一个文件: 输入“vi filename”. 这里,filename就是你要打开的文件的名字,默认打开文件后vi处于指令模式。 *进入编辑模式编辑打开的文件: 输入“i”. 或输入“a”. 进入编辑模式后,你可以直接敲入想要输入的字符到文件,两者的区别是i在当前字符前面开始插入,a在当前字符后面开始插入。 *退出编辑模式: 输入“[Esc]”. 这样,将返回指令模式,准备接收你要传达给vi的指令并执行,如果之前已经在指令模式下,那么系统将响铃提醒一下。 **以下命令都是在命令模式下进行: *撤销修改: 输入“u”. 这里,相比以前的vi来说,vim支持多步撤销。 *恢复修改: 输入“[Ctrl]r”. 这里,和撤销命令相反,是撤销的撤销,也可多步。 *复制行到剪切板: 输入“yy”. *复制选定内容到剪切板: (1)输入“v”。 (2)按方向键将高亮选择的内容。 (3)输入“y”。 这里,开始输入v使vi临时进入了一个"选择模式",输入方向键可以选择,输入y将选择的内容复制剪切板。 *删除行: 输入“dd”. 注意,vi的删除等价于剪切,删除的内容会保存到剪切板中。 *删除选定内容: (1)输入“v”。 (2)按方向键将高亮选择的内容。 (3)输入“d”。 这里,开始输入v使vi临时进入了一个“选择模式”,输入方向键可以选择,输入d将选择的内容删除。 *粘贴: 输入“p”. 这样会将剪切板的内容粘贴到光标位置或者光标下一行。 *查找字符并定位到第一个匹配处: 输入“/character”. 这里character是待查找的字符,只要先输入/,再输入待查字符,最后回车即可定位到第一个匹配的字符处。 *定位到匹配查找的下一个字符处: 输入“n”. *定位到匹配查找的上一个字符处: 输入“N”. *保存文件: 输入“:w”. 注意w前面的':',输入':'之后,vim会将':'之后的输入解释为待执行的指令。 *退出: 输入“:q”. 这里,如果文件没有保存,将提示无法退出,除非你强制退出,不保存文件,或者保存退出。 *强制退出: 输入“:q!”. *保存退出: 输入“:wq”. 或输入“ZZ”. *察看帮助 输入":help". ** 另外还有一个简易的教程: 输入命令:vimtutor.

34,837

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧