我用以下LIKE条件编写了以下SQL查询:
SELECT * FROM Manager
WHERE managerid LIKE '_%'
AND managername LIKE '%_%'
Run Code Online (Sandbox Code Playgroud)
在LIKE我想要搜索任何下划线%_%,但我知道我的列的数据没有下划线字符.
样本数据:
create table Manager(
id int
,managerid varchar(3)
,managername varchar(50)
);
insert into Manager(id,managerid,managername)values(1,'A1','Mangesh');
insert into Manager(id,managerid,managername)values(2,'A2','Sagar');
insert into Manager(id,managerid,managername)values(3,'C3','Ahmad');
insert into Manager(id,managerid,managername)values(4,'A4','Mango');
insert into Manager(id,managerid,managername)values(5,'B5','Sandesh');
Run Code Online (Sandbox Code Playgroud)
我的SQL查询是这样的
create table Manager(id int, managerid varchar(3) , managername varchar(50))
insert into Manager(id,managerid,managername)values(123,'A12','Mangesh')
insert into Manager(id,managerid,managername)values(54321,'A23','Sagar')
insert into Manager(id,managerid,managername)values(334,'C34','Ahmad')
insert into Manager(id,managerid,managername)values(456,'A45','Mango')
insert into Manager(id,managerid,managername)values(567,'B56','Sandesh')
Run Code Online (Sandbox Code Playgroud)
我喜欢的查询就是这个
select * from Manager where id LIKE '%4321%'
Run Code Online (Sandbox Code Playgroud)
这个查询给了我这个记录
id managerid managername
54321 A23 Sagar
Run Code Online (Sandbox Code Playgroud)
但是当我尝试运行这种查询时,它并没有给我任何记录,即零记录计数,但实际上有一条记录查询是:
select * from Manager where id LIKE '%?4321%'
Run Code Online (Sandbox Code Playgroud)
这有什么问题?
sql小提琴sql查询