SQL中的“_”通配符

"_"通配符的功能与"%"通配符基本相同,只是它只表示任意一个字符的的匹配,当然要想表示两个字符的匹配,就需要使用两个"_"通配符,

只有在用户确定的所要查询的字符串的个数,只是不确定其中的一个或者几个字符的确切值,才使用"_".

例子:使用"_"通配符查询课程名有5个字且以"计算机"开始的课程

在course表中查询以"计算机"开头且只有5个文字的所有课程的名字(cname),人数(scount)以及考试的时间(ctest)的信息

select cname,scount,ctest from course where cname like ‘计算机_‘ order by cname

2:

与"%"通配符相似,"_"通配符可以用在字符串的任意的位置,当然,如果用户只知道要查询的字符串的个数,而不确定其中的任何一个的字符时候,也可以使用"_"通配符。

实例:

使用"_"通配符查询课程名为6个字的所有的课程

在course表中查询所有的课程名为6个字的所有的课程的课程名(cname),人数(scount),以及考试的时间(ctest)信息。实例代码:

select cname ,scount,ctest from course where cname like ‘______‘order by cname

此时会发现,不仅包含课程名6个字的所有的课程,而且课程名小于6个字的记录也被列入查询结果表中,这一点也是实际应用中会被忽略的,如查询字符串"计算机_"时,如果有条记录为"计算机",则它也被认为是符合条件的因此正确的代码是

select cname ,scount,ctest from course where cname like ‘______‘   not cname like ‘___‘order by cname

时间: 2024-11-02 13:36:38

SQL中的“_”通配符的相关文章

使用正则表达式实现像SQL中LIKE语句中的%和_通配

在项目中我们经常遇到将数据库的数据取到后再次进行筛选过滤的情况.LINQ to Entity提供了统一的查询接口并且可以高效的完成工作,但是对于我们常在SQL中使用的%和_这样的通配符并没有支持.我们只能通过String.Contains方法来实现简单的通配.使用String.Contains方法是无法达到在查询串中使用通配符的目的的.正则表达式虽然晦涩难懂,但功能十分强大,解决个统配符绰绰有余. 代码如下:     public static class LINQHelper     {   

转【】浅谈sql中的in与not in,exists与not exists的区别_

浅谈sql中的in与not in,exists与not exists的区别 1.in和exists in是把外表和内表作hash连接,而exists是对外表作loop循环,每次loop循环再对内表进行查询,一直以来认为exists比in效率高的说法是不准确的.如果查询的两个表大小相当,那么用in和exists差别不大:如果两个表中一个较小一个较大,则子查询表大的用exists,子查询表小的用in: 例如:表A(小表),表B(大表) select * from A where cc in(sele

NSPredicate用法总结(Cocoa框架中的NSPredicate用于查询,原理和用法都类似于SQL中的where,作用相当于数据库的过滤取)

简述:Cocoa框架中的NSPredicate用于查询,原理和用法都类似于SQL中的where,作用相当于数据库的过滤取. 定义(最常用到的方法): [objc] view plaincopy NSPredicate *ca = [NSPredicate predicateWithFormat:(NSString *), ...]; Format:(1)比较运算符>,<,==,>=,<=,!=可用于数值及字符串例:@"number > 100" (2)范围

教您如何使用SQL中的SELECT LIKE like语句

LIKE语句在SQL有着不可替代的重要作用,下文就将为您介绍SQL语句中SELECT LIKE like的详细用法,希望对您能有所帮助. LIKE语句的语法格式是:select * from 表名 where 字段名 like 对应值(子串),它主要是针对字符型字段的,它的作用是在一个字符型字段列中检索包含对应子串的. A:% 包含零个或多个字符的任意字符串: 1.LIKE'Mc%' 将搜索以字母 Mc 开头的所有字符串(如 McBadden). 2.LIKE'%inger' 将搜索以字母 in

SQL中的等号、IN、LIKE三者的比较

SQL中的等号.IN.LIKE三者的比较SQL 中等号.IN.LIKE 三者都可以用来进行数据匹配 .但三者并不相同. 等号是用来查找与单个值匹配的所有数据: IN 是 用来查找 与多个值匹配的所有数据: 而 LIKE用来查找与一个模式匹配的所有数据. 1.等号   确切知道所要查 确切知道所要查找的内容,且为单一值时,可以使用等号运算符来进行数据比较.等号运算符中可以使用字符串.日期或数字.例如,查找名为“王静”的工作人员,可以使用等号进行匹配: SELECT name, sex, id, s

SQL中的LIKE语句的用法

SQL中的LIKE语句的用法 内容 在SQL结构化查询语言中,LIKE语句有着至关重要的作用.LIKE语句的语法格式是:select * from 表名 where 字段名 like 对应值(子串),它主要是针对字符型字段的,它的作用是在一个字符型字段列中检索包含对应子串的. 假设有一个数据库中有个表table1,在table1中有两个字段,分别是name和sex二者全是字符型数据.现在我们要在姓名字段中查询以“张”字开头的记录,语句如下:     select * from table1 wh

SQL学习之用通配符进行数据过滤

一.Like操作符 之前介绍的所有的操作符都是针对已知值进行过滤.不管匹配一个值还是多个值,检验大于还是小于已知值,或者检查某个范围的值,其共同点是过滤中使用的值都是已知的. 但是这种方法并不是任何时候都好用.有如下代码: select ItemId,ItemName,CheckValueNum,CheckValueString,ResultLevel from T_Check_InfoDetail 需求:现在需要检索ItemName中包含"心率"的行记录,这个时候使用简单的比较操作符

PL/Sql 中创建、调试、调用存储过程

存储过程  所用函数说明  功能:求和与差  原形:GetSumAndSub(p1 in number , p2 in number ,m out number , b out number)   参数:m=p1+p2 b=p1-p2  1.先建存储过程 左边的浏览窗口选择 procedures ,会列出所有的存储过程,右击文件夹procedures单击菜单"new",弹出  template wizard窗口, name框中输入 GetSumAndSub ,parameters中填入

SQL中CRUD C——create 添加数据 R——read 读取数据 U——update 修改数据 D——delete 删除数据

在SQL server中对数据库的操作: 删除表:drop table 表名修改表:alter table 表名 添加列add 列名 列类型alter table 表名 drop column 列名 删除数据库drop database 数据库名 CRUD操作C——create 添加数据 R——read 读取数据 U——update 修改数据 D——delete 删除数据 1.添加数据insert into 表名 values('第一列值','第二列值')——数据库中用单引号 每一列都要添加 第