全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1.SQL like对时间查询的处理方法SQL数据表中有savetime(smalldatetime类型)字段,表中有两条记录,savetime值为:2005-3-8 12:12:00和2005-6-6 14:02:02 我用下面语句什么也搜不出来 select * from soft where soft.savetime like%2005-3-8% SQL帮助中说: 当搜索 datetime 值时,推荐使用 LIKE,因为 datetime 项可能包含各种日期部分。例如,如果将值 19981231 9:20 插入到名为 arrival_time 的列中,则子句 WHERE arrival_time = 9:20 将无法找到 9:20 字符串的精确匹配,因为 SQL Server 将其转换为 1900 年 1 月 1 日上午 9:20。然而,子句 WHERE arrival_time LIKE %9:20% 将找到匹配。 后运行下面语句SELECT soft.*, CAST(soft.savetime AS varchar(20) AS strdatetime, 发现 SQL把smalldatetime格试转成: 03 8 2005 12:12PM 我何用 like%2005-3-8%搜索到2005年3月8日所有的记录?select * from soft where datediff(d,soft.savetime,convert(datetime,20050308,121)=0 - select * from soft where convert(char(10),soft.savetime,121)=200503082. SQL对like 操作中的特殊字符处理方法:SQL Server查询过程中,单引号 是特殊字符,所以在查询的时候要转换成双单引号 。在like操作还有以下特殊字符:下划线_,百分号%,方括号,尖号。其用途如下:下划线:用于代替一个任意字符(相当于正则表达式中的 ? )百分号:用于代替任意数目的任意字符(相当于正则表达式中的 * )方括号:用于转义(事实上只有左方括号用于转义,右方括号使用最近优先原则匹配最近的左方括号)尖号:用于排除一些字符进行匹配(这个与正则表达式中的一样)以下是一些匹配的举例,需要说明的是,只有like操作才有这些特殊字符,=操作是没有的。a_b. a_b%a%b. a%b%ab. ab%ab. ab%ab. ab%ab. ab%ab. ab%在实际进行处理的时候,对于=操作,我们一般只需要如此替换: - 对于like操作,需要进行以下替换(注意顺序也很重要) - (这个必须是第一个替换的!)% - % (这里%是指希望匹配的字符本身包括的%而不是专门用于匹配的通配符)_ - _ - 3.SQL Like 通配符特殊用法:Escape阐述Escape 的作用:1.使用 ESCAPE 关键字定义转义符。在模式中,当转义符置于通配符之前时,该通配符就解释为普通字符。例如,要搜索在任意位置包含字符串 5% 的字符串,请使用: WHERE ColumnA LIKE %5/% ESCAPE / 但是在mysql中好像不能使用。2.ESCAPE escape_character 允许在字符串中搜索通配符而不是将其作为通配符使用。escape_character 是放在通配符前表示此特殊用途的字符。 SELECT * FROM finances WHERE description LIKE gs_ ESCAPE S GO 意思就是: 比如,我们要搜索一个字符串 g_ ,如果直接 like g_,那么 _的作用就是通配符,而不是字符,结果,我们会查到比如 ga,gb,gc,而不是我们需要的 g_. 用 LIKE gs_ ESCAPE S s表示特殊用法标志 3.create table a (name varchar(10) go insert into a select 11%22 union all select 11%33 union all select 12%33 go select * from a WHERE name LIKE %/%33 ESCAPE / -指定用/符号来说明跟在其后面的通配符字符为普能字符。(第二个%是字符不是通配符来的) go drop table a结果为: name - 11%33 12%33总结:%:匹配零个及多个任意字符; _:与任意单字符匹配; :匹配一个范围; :排除一个范围Symbol Meaning like 5% 5% like _n _n like a-cdf a, b, c, d, or f like -acdf -, a, c, d, or f like like like abc_d% abc_d and abc_de like abcdef abcd, abce, and abcf like 1-9 0 like 1-9b-z 0, a对于字符串中出现的特殊字符:%, _ 可以使用 把它们包含起来,这样在匹配模式(pattern)中,它们就被当作普通字符对待了。1. 用 like 匹配特殊字符 select 1 where ABCDE like %2. 用 like 匹配特殊字符 select 1 where ABCDE like %3. 用 like 匹配特殊字符 select 1 where ABCDE like %4. 用 like _ 匹配特殊字符 _select 1 where _ABCDE like _%5. 用 like % 匹配特殊字符 %select 1 where ABC%DE like ABC%DE对于其他的特殊字符:, -, 因为它们本身在包含在 中使用,所以需要用另外的方式来转义,于是就引入了 like 中的 escape 子句,另外值得注意的是:escape 可以转义所有的特殊字符。select 1 where ABCDE like !ABCDE escape !select 1 where -ABCDE like !-ABCDE escape !select 1 where ABCDE like !ABCDE escape !select 1 where %ABCDE like %ABCDE escape select 1 where %ABCDE like !%ABCDE escape !select 1 where %ABCDE like #%ABCDE escape #select 1 where %ABCDE like %ABCDE escape select 1 where ABCDE like !ABCDE escape !select
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 商丘市2026-2027学年中考冲刺卷数学试题(含答案解析)
- 2026年易门县带编教师招聘笔试模拟试题及答案解析
- 2026年镇赉县带编教师招聘考试模拟试题及答案解析
- 江南大学大学英语
- 2026年五华县带编教师招聘笔试参考题库及答案解析
- 2026年龙门县带编教师招聘笔试备考试题及答案解析
- 2026年寿宁县带编教师招聘笔试备考试题及答案解析
- 2026年农安县带编教师招聘考试模拟试题及答案解析
- 2026年井研县带编教师招聘考试参考题库及答案解析
- 2026年孟连傣族拉祜族佤族自治县带编教师招聘考试备考试题及答案解析
- 国家级零碳园区建设咨询服务方案投标文件(技术方案)
- 初三化学第一、二单元测试卷
- 100以内进位加法竖式计算题100道及答案
- 中国电信:分布式智算中心无损网络技术白皮书
- HG-T+21527-2014回转拱盖快开人孔
- 《乳品加工工》技师培训课件-项目五 乳制品加工工艺及设备
- 社会工作导论 课件 第一章 社会工作的定义与框架
- 人教版一年级上册数学全册课件(2022年9月新版)
- 上海绿地集团事业部甲级智能化办公楼概述
- 分离正庚烷-正己烷混合液的筛板式精馏塔工艺设计
- GB/T 4857.4-2008包装运输包装件基本试验第4部分:采用压力试验机进行的抗压和堆码试验方法
评论
0/150
提交评论