SQL SERVER 的模糊查询 LIKE

今天写个动态脚本,需要把数据库里面包含“USER_"的表删除掉,突然想不起来如何搜索通配字符了,赶紧查查MSDN,整理了下模糊查询的知识点,留着以后查阅用。

 

LIKE模糊查询的通配符


通配符


说明


示例


%


包含零个或多个字符的任意字符串。


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 的所有作者的姓氏。

 

搜索通配符字符

在模糊查询中,我们需要查询包含通配符%, _之类的字符,比如我需要查询表名包含"user_"的表,我们可以用下面两种方法。

SELECT * FROM   sysobjects WHERE xtype = 'U' AND name LIKE '%user/_%' ESCAPE '/'
SELECT * FROM   sysobjects WHERE xtype = 'U' AND name LIKE '%user[_]%' 

将通配符作为文字使用

可以将通配符模式匹配字符作为文字字符使用。若要将通配符作为文字字符使用,请将通配符放在方括号中。下表显示了几个使用 LIKE 关键字和 [ ] 通配符的示例。


符号


含义


LIKE '5[%]'


5%


LIKE '[_]n'


_n


LIKE '[a-cdf]'


a、b、c、d 或 f


LIKE '[-acdf]'


-、a、c、d 或 f


LIKE '[ [ ]'


[

时间: 2024-09-15 03:13:24

SQL SERVER 的模糊查询 LIKE的相关文章

sql server怎么模糊查询某几列

问题描述 sql server怎么模糊查询某几列 小白一个,正在做一个管理系统,有第一周到第二十周的数据,怎么每次通过写入第几周,把本周的数据查询出来呢 解决方案 在数据查询的时候,有完整查询和模糊查询之分.在Access和SQL Server中使用模糊查询有一下几种查询: 1.用_通配符查询 "_"号表示任意单个字符,该字符号只能匹配一个字符,利用"_"号可以作为通配符组成匹配模式进行查询."_"符号可以放在查询条件 的任意位置,且只能代表一个

SQL Server数据库模糊查询的ASP实现

server|数据|数据库 ASP及其ADO组件简介 ---- ASP(Active Server Pages)是一种服务器端的脚本语言,可以把它看作是Html.脚本和 CGI(通用网关接口)的结合.但它却比Html保密性更高,比脚本更灵活,比CGI更高效. ----ASP程序的扩展名为".ASP",它可以包含Html语句. ASP命令.文本及其他可以嵌套于Htnk文档的所有描述性语言(如:VBScripts,JavaScripts 等).其中ASP命令必须位于ASP定义的符号&quo

Sql Server 存储过程中查询数据无法使用 Union(All)

原文:Sql Server 存储过程中查询数据无法使用 Union(All) 微软Sql Server数据库中,书写存储过程时,关于查询数据,无法使用Union(All)关联多个查询.     1.先看一段正常的SQL语句,使用了Union(All)查询:      SELECT ci.CustId --客户编号 , ci.CustNam --客户名称 , ci.ContactBy --联系人 , ci.Conacts --联系电话 , ci.Addr -- 联系地址 , ci.Notes --

SQL SERVER中对查询结果随机排序

server|排序|随机 译:SQL SERVER中对查询结果随机排序 Randomly Sorting Query Results 查询结果随机排序 Q. How can I randomly sort query results?问:怎样才能对查询结果随机排序? A. To randomly order rows, or to return x number of randomly chosen rows, you can use the RAND function inside the S

SQL Server 2000分布式查询:OLE DB连接

概述和术语 在 MicrosoftSQL Server 2000 中,分布式查询允许SQL Server用户访问基于SQL Server的服务器以外的数据(位于其他运行SQL Server的服务器或是具有OLE DB接口的其他数据源中).OLE DB提供了统一的方式来访问异类数据源中的列表数据. 在本文中,分布式查询是指任何引用了一个或多个外部OLE DB数据源中表或行集的SELECT.INSERT.UPDATE或DELETE语句. 远程表是指存储于 OLE DB 数据源中并且不在执行查询的SQ

SQL Server 存储过程名称查询

  SQL Server存储过程名称查询 Select OBJECT_NAME(id) FROM syscomments Where [text] LIKE '%table_name%' AND OBJECTPROPERTY(id, 'IsProcedure') = 1 GROUP BY OBJECT_NAME(id) 所有使用表名

SQL Server执行逻辑查询时,SQL被解析的步骤

以下这段对SQL Server执行逻辑查询时,SQL被解析的步骤.摘自<SQL Server 2005技术内幕 T-SQL查询>.这是一本非常好的讲解SQL Server的书,整个SQL Server 2005技术内幕系列都是,个人强烈推荐. 我一直认为,学好任何一种技术,没有什么比学好它的基础知识和底层原理更重要.如果你相信有"捷径",那么这就是唯一的"捷径".了解这些,有助于你更快地掌握技术最本质的核心. 我真希望早点看到那些好书,也希望看到这篇文章

求大神帮下忙,小弟需要一个java连接sql server数据库实现查询功能的代码

问题描述 求大神帮下忙,小弟需要一个java连接sql server数据库实现查询功能的代码 如题 求大神给个查询功能的代码 做毕业设计需要 帮帮忙 下面附上添加功能的代码 public int Add(Client c) { int count=0; try { con=this.getcon(); String sql=String.format("insert Client values('%s',%d,'%s','%s','%s','%s','%s',0,'%s')", c.g

报表制作sql语句,模糊查询

问题描述 报表制作sql语句,模糊查询 select [BinnId][Code][BoxCode][SCode][CreateName][CreateTime] from dbo.Logistics_Binn where len(SCode)-len(replace(SCode''''))!=8 ${if(len(p1)==0"and SCode collate Chinese_PRC_CS_AS like '%""+p1+""%' or BoxCode