我有一个姓氏和名字。
我需要能够搜索史密斯或史密斯j。
我在where子句中有这个:
lastname LIKE '%SMITH%' AND firstname LIKE '%J%'
我做错了什么?如何为一个LIKE组合姓氏和名字?数据中确实有一个smith j。
感谢您的帮助。
如果重要的话,我正在使用Oracle 11g。
编辑:忘记包含引号。我确实有那个。感谢。
编辑:看起来我做得对,所以它必须是别的。
答案 0 :(得分:4)
尝试:
UPPER(lastname) LIKE '%SMITH%' AND UPPER(firstname) LIKE '%J%'
或者如果你真的需要一个声明:
UPPER(lastname||firstname) LIKE '%SMITH%J%'
答案 1 :(得分:1)
除非我误解了你的问题
lastname LIKE '%smith%'
本身会同时返回吗?
答案 2 :(得分:1)
你需要围绕琴弦的撇号:
lastname LIKE '%smith%' AND firstname LIKE '%J%'
答案 3 :(得分:0)
如何使用与之匹配的正则表达式而不是使用like?
答案 4 :(得分:0)
怎么样
(
(lastname LIKE '%SMITH%') AND
( (firstname LIKE '%J%') OR (firstname IS NULL) OR (firstname ='') )
)