在SQL中,通配符是用于模糊匹配字符串的特殊字符。常用的通配符有以下几种:
1. 百分号(%):表示零个或多个字符的任意序列。例如,"abc%"可以匹配以"abc"开头的任意字符串。
2. 下划线(_):表示单个字符的任意字符。例如,"a_c"可以匹配"aac"、"abc"等。
3. 方括号([ ]):用于指定字符集合中的任意单个字符。例如,"[abc]"可以匹配"a"、"b"或"c"。
4. 脱字符(^):用于指定字符集合中不包含的字符。例如,"[^abc]"可以匹配除了"a"、"b"和"c"以外的任意字符。
这些通配符可以与SQL语句中的LIKE操作符一起使用,用于模糊匹配字符串。例如,"SELECT * FROM table_name WHERE column_name LIKE 'abc%'"可以查询以"abc"开头的数据。
需要注意的是,通配符的具体使用方式可能因数据库管理系统的不同而有所区别,请根据你使用的数据库系统的文档或参考相关的SQL教程来了解更详细的信息。
用于where比较条件的有 :
等于:=、<、<=、>、>=、<>
>,< : 大于,小于
> =.<=: 大于等于,小于等于
=:等于
!=,<>,^=:不等于
包含:in、not in exists、not exists
范围:between…and、not between…and
匹配测试:like、not like
Null测试:is null、is not null
布尔链接:and、or、not
Oracle通配符 :
在where子句中,通配符可与like条件一起使用。在Oracle中:
%(百分号): 用来表示任意数量的字符,或者可能根本没有字符。
_(下划线): 表示确切的未知字符。
?(问号): 用来表示确切的未知字符。
#(井号): 用来表示确切的阿拉伯数字,0到9。
[a-d] (方括号):用来表示字符范围,在这里是从a到d。
单引号(’):在Oracle中,应该只使用单引号将文本和字符和日期括起来,不能使用引号(包括单双引号)将数字括起来。
双引号("):在Oracle中,单双引号含义不同。双引号被用来将包含特定字符或者空格的列别名括起来。双引号还被用来将文本放入日期格式。
撇号(’):在Oracle中,撇号也可以写成彼此相邻的两个单引号。为了在供应商名字中间查找所有带撇号的供应商名字,可以这样编写代码:
select * from l_suppliers where supplier_name like ‘%’’%’
&符号:在Oracle中,&符号常用来指出一个变量。例如,&fox是一个变量,稍微有点不同的一种&& fox。每当&fox出现在Oracle脚本中时,都会要求您为它提供一个值。而使用&&fox,您只需要在& &fox第一次出现时为它提供变量值。如果想将&符号作为普通的符号使用,则应该关闭这个特性。要想关闭这个特性,可以运行以下的命令: set define off ,这是一个SQLplus命令,不是一个SQL命令。SQLplus设置了SQL在Oracle中运行的环境。
双竖线(||):Oracle使用双竖线表示字符串连接函数。
星号(*):select 意味着选择所有的列,count()意味着计算所有的行,表示通配符时,表示0个或任意多个字符。
正斜杠(/):在Oracle中,用来终止SQL语句。更准确的说,是表示了“运行现在位于缓冲区的SQL代码”。正斜杠也用作分隔项。
多行注释:/…/。
不等于:有多种表达方式:!=、^=、<>、not xxx=yyy、not(xxx=yyy)
在Oracle中。":"有2中意思;
一:给变量 赋值 , 如, names varchar2(10) :=‘aa’; 这是把"aa"赋值给变量names
二:表示引用。即引用表中字段所对应的值
如:emp表中有个name为“Bob”,那么 : old.name 的值就是"Bob"。
只是表示引用的时候,只能出现在触发器 里面。