sql模糊查询语句详解

在sql中要兑现模糊查询我们要是用到like就能够达成了,中间再带一些参数如% ?
等,上边来看个实例。LIKE 操作符LIKE 操作符用于在 WHERE
子句中寻找列中的钦定格局。

SQL LIKE 操作符语法

SELECT column_name(s)FROM table_nameWHERE column_name LIKE

1 CREATE TABLE employee (emp_no INTEGER NOT NULL,2 emp_fname
CHAR(20) NOT NULL,3 emp_lname CHAR(20) NOT NULL,4 dept_no CHAR(4)
NULL)5 GO1 insert into employee values(1, ‘Matthew’, ‘Smith’, ‘d3’)2
insert into employee values(2, ‘Ann’, ‘Jones’, ‘d3’)3 insert into
employee values(3, ‘John’, ‘Barrimore’,’d1′)4 insert into employee
values(4, ‘James’, ‘James’, ‘d2’)5 insert into employee values(5,
‘Elsa’, ‘Bertoni’, ‘d2’)6 insert into employee values(6, ‘Elke’,
‘Hansel’, ‘d2’)7 insert into employee values(7, ‘Sybill’, ‘Moser’,
‘d1’)8 GO

SELECT * FROM employee WHERE emp_fname NOT LIKE ‘%n’4 GOemp_no
emp_fname emp_lname dept_no———– ——————–
——————– ——- 1 Matthew Smith d3 4 James James d2 5
Elsa Bertoni d2 6 Elke Hansel d2 7 Sybill Moser d1

实例二

2 SELECT *3 FROM Employee4 WHERE Name LIKE %[k-l]%5 GOID name
salary start_date city region———– ———- ———–
———————– ———- —— 3 Celia 24020 1996-12-03
00:00:00.000 Toronto W 4 Linda 40620 1997-11-04 00:00:00.000 New York
N 7 Alison 90620 2000-08-07 00:00:00.000 New York W

关于like %%

# %意味着私下多个字符

select * from user where username like ‘%huxiao’;

select * from user where username like ‘huxiao%’;

select * from user where username like ‘%huxiao%’;

# %表示二个字符

select * from user where username like ‘_’;

select * from user where username like ‘______’;

select * from user where username like ‘huxia_’;

select * from user where username like ‘h_xiao’;

#
要是小编就实在要查%或许_,咋做呢?使用escape,转义字符前边的%或_就不作为通配符了,注意眼下未有转义字符的%和_依旧起通配符成效

select username from gg_user where username like ‘%xiao/_%’ escape
‘/’;select username from gg_user where username like ‘%xiao/%%’
escape ‘/’;

关于通配符

‘A_Z’: 全部以 ‘A’ 带头,另二个任何值的字原,且以 ‘Z’ 为末段的字串。
‘ABZ’ 和 ‘A2Z’ 都适合那叁个情势,而 ‘AKKZ’ 并不适合 (因为在 A 和 Z
之间有三个字原,实际不是叁个字原卡塔尔国。 ‘ABC%’: 全数以 ‘ABC’
起头的字串。举个例子来讲,’ABCD’ 和 ‘ABCABC’ 都适合这么些套式。 ‘%XYZ’: 全部以
‘XYZ’ 结尾的字串。比如来佛讲,’WXYZ’ 和 ‘ZZXYZ’ 都合乎那个套式。 ‘%AN%’:
全部含有 ‘AN’ 那些套式的字串。举例来讲, ‘LOS ANGELES’ 和 ‘SAN
FRANCISCO’ 都严密闭合这一个套式。

在 SQL 中,可接受以下通配符:

通配符

描述

% 代替多少个或多个字符 _ 仅代替叁个字符 [charlist]
字符列中的任何单一字符

[^charlist]

或者

[!charlist]

不在字符列中的任何单

网站地图xml地图