SQL SERVER 使用ESCAPE转义
使用SQL语句查询是开发中常做的事,在实际的情况中,可能会遇到,查询包含某个关键词的所有行,而这个关键词正好也是SQL SERVER的关键词。
下面有一张表Member,有如下的数据:

假如需要查询名字中包含%字符的数据,首先我们会有这样的查询语句:
SELECT * FROM dbo.Member WHERE Name LIKE '%%%'
但是由于%在SQL SERSER中是关键字,此时需要转义,没有转义的写法可以如下:
SELECT * FROM dbo.Member WHERE Name LIKE '%[%]%'
转义的写法如下,使用ESCAPE指定转义符:
SELECT * FROM dbo.Member WHERE Name LIKE '%~%%' ESCAPE '~'

在项目中使用Entity Framework时,比如名称是否包含%,则DBContext.Set<Member>().Where(m => m.Name.Contains("%")),然后使用SQL Profiler可以看出Entity Framework生成的SQL是使用了~作为转义符。开发中如果是我们手写SQL(非ORM自动生成),转义符可以自由指定,例如:\
SQL SERVER 使用ESCAPE转义的更多相关文章
- SQL Server:SQL Like 通配符特殊用法:Escape 【转】
		
SQL中escape的主要用途 1.使用 ESCAPE 关键字定义转义符.在模式中,当转义符置于通配符之前时,该通配符就解释为普通字符.例如,要搜索在任意位置包含字符串 5% 的字符串 ...
 - ylb:SQL Server中的escape(逃逸)
		
ylbtech-SQL Server:SQL Server-SQL中的escape(逃逸) SQL Server中的escape(逃逸). 1,SQL Server中的escape(逃逸) 返回顶部 ...
 - 【转载】SQL Server 2008 r2 中 SQL语句中单引号转义
		
sql server有两个转义符. 默认情况下, 单引号'是字符串的边界符, 如果在字符串中包含单引号', 则必须使用两个单引号', 第1个单引号'就是转义符.
 - sql server中sql语句中单引号怎么转义?【转】
		
sql server有两个转义符: ' 默认情况下, '是字符串的边界符, 如果在字符串中包含', 则必须使用两个', 第1个'就是转义符 另一个转义符是" 当SET QUOTED_IDEN ...
 - SQL Server查询中特殊字符的处理方法 (SQL Server特殊符号的转义处理)
		
SQL Server查询中特殊字符的处理方法 (SQL Server特殊符号的转义处理) SQL Server查询中,经常会遇到一些特殊字符,比如单引号'等,这些字符的处理方法,是SQL Server ...
 - sql server中常用方法函数
		
SQL SERVER常用函数 1.DATEADD在向指定日期加上一段时间的基础上,返回新的 datetime 值. (1)语法: DATEADD ( datepart , number, date ) ...
 - 在SQL Server中用好模糊查询指令LIKE
		
简介:like在sql中的使用 在SQL Server中用好模糊查询指令LIKE 查询是SQL Server中重要的功能,而在查询中将Like用上,可以搜索到一些意想不到的结果和效果,like的神奇之 ...
 - 在SQL Server中用好模糊查询指令LIKE (转载)
		
like在sql中的使用:在SQL Server中用好模糊查询指令LIKE:查询是SQL Server中重要的功能,而在查询中将Like用上,可以搜索到一些意想不到的结果和效果,like的神奇 一.一 ...
 - SQL Server中LIKE和PATINDEX的用法
		
在SQL Server中,能使用通配符的只有2个:LIKE.PATINDEX. 不过LIKE支持2种通配符转义,无限制最全面:而PATINDEX只支持最简单的通配符转义([]转义),限制较多. LIK ...
 
随机推荐
- C/C++ -- Gui编程 -- Qt库的使用 -- 组件大杂烩
 - android学习-异步消息处理机制
			
消息处理机制主要对象:Looper,Handler,Message(还有MessageQueue和Runnable) Looper不断从MessageQueue消息队列中取出一个Message,然后传 ...
 - solidity如何拼接字符串?
			
当你开始学习使用solidity开发以太坊智能合约之后,很快你会碰到一个问题: 一.在solidity中该如何拼接字符串? 可能你已经试过了,下面的代码试图把两个字符串使用相加的运算符连接起来,但是这 ...
 - KafkaOffsetMonitor监控kafka
			
KafkaOffsetMonitor监控kafka 1. KafkaOffsetMonitor是一个可以用于监控Kafka的Topic及Consumer消费状况的工具,其配置和使用特别的方便.源项目G ...
 - [经典]网关,DNS,DHCP三者关系详解
			
什么叫网关的精解 Sample Text转自(协议分析论坛)计算机主机网关的作用是什么?假设你的名字叫小不点,你住在一个大院子里,你的邻居有很多小伙伴,在门口传达室还有个看大门的李大爷,李大爷就是你的 ...
 - C学习笔记(1)-结构体、预处理与多文件结构程序设计
			
一.结构体的定义与使用 #include <stdio.h> //定义结构体(类似模板) typedef struct { char name[50]; int age; char add ...
 - .net面试题[转载]
			
1.简述private.protected.public.internal修饰符的访问权限. private:私有成员,在类的内部才可以访问. protected:保护成员,该类内部和继承类中可以访问 ...
 - [日常] 搭建golang开发环境
			
下载目录:https://studygolang.com/dl32位选 go1.10.linux-386.tar.gz64位选 go1.10.linux-amd64.tar.gz uname -a查看 ...
 - 一次单核CPU占用过高问题的处理
			
客户现场反馈,top的检查结果中,一个CPU的占用一直是100%.实际上现场有4个CPU,而且这个服务器是mysql专属服务器. 我的第一反应是io_thread一类的参数设置有问题,检查以后发现re ...
 - Spring 核心组件总结
			
spring核心组件总结 spring介绍 spring概念 IOC: Inverse Of Control 控制反转  将我们创建对象的方式反转了,以前创建对象是由我们开发人员自己维护,包括依赖注 ...