我需要将两个varchar2列(HOME,HOME)与参数p_search_string进行比较,但与%通配符进行比较。当我只发送了很少的第一封信,我想找到所有的列回家或离开与这三个前三个字母。
CREATE OR REPLACE FUNCTION SEARACH_FOR_GAMES (p_search_string in varchar2, p_match_type in number)
return weak_cur
IS
SEARCH_FIXID WEAK_CUR;
BEGIN
OPEN SEARCH_FIXID FOR
select FIXID, HOME,AWAY,COMP_NAME, M_TIME
from SOCCER_PREMATCH_MATCHES s
where upper(s.HOME) LIKE upper('%'p_search_string'%')
or upper(s.AWAY) LIKE upper('%'p_search_string'%')
AND p_match_type IN (0, 2)我尝试了几种方法,但我得到了我期待的错误,或者一些类似的错误。
发布于 2018-06-05 09:17:46
您需要使用upper('%' || p_search_string || '%')将通配符与字符串连接起来
https://stackoverflow.com/questions/50696415
复制相似问题