Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
638 views
in Technique[技术] by (71.8m points)

使用Oracle SQL Developer时,通配符查询返回结果为空表

软件版本4.0.2.15 Build 15.21

数据库中有一个名为PERSONS的表,结构及内容如图:
1

2

输入查询语句

SELECT * FROM PERSONS
WHERE City LIKE '[BL]%'

运行结果为空表,何故?


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)

[BL]是正则吗?想表达的意思是City以B或L打头吗?

LIKE是不支持正则的,oracle的正则匹配函数是REGEXP_LIKE.

另外,正则的通配符和LIKE的不一样,正则的写法应该是:

SELECT * FROM PERSONS
WHERE REGEXP_LIKE(City, '[BL].*')

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...