SQL LIKE запрос не работает - PullRequest
0 голосов
/ 08 июля 2010

Я пытаюсь выполнить следующий запрос к БД Oracle, но запрос возвращает 0 записей:

select * from TABLE 
where upper(FIELD) like '%SEE COMMENT%'

Я знаю, что в этом поле содержится много записей с надписью «Смотрите комментарий». Например, вот одна из записей:

=if(and(Robust_Mean>=20,Robust_Mean<=70),.03*(Robust_Mean+29),
if(Robust_Mean>70,.083*(Robust_Mean^.9),"See Comment"))

Я предполагаю, что кавычки в поле портят запрос, но я не уверен, как его обойти. Есть предложения?

Ответы [ 2 ]

1 голос
/ 08 июля 2010

Просто понял, что в этой таблице два поля с одинаковыми именами, и я выбрал неправильное.

1 голос
/ 08 июля 2010

Это работает для меня:

create table testLike (aCol varchar2(500) );

INSERT INTO TESTLIKE VALUES('abc');
insert into testLike values('=if(and(Robust_Mean>=20,Robust_Mean<=70),.03*(Robust_Mean+29),
if(Robust_Mean>70,.083*(Robust_Mean^.9),"See Comment"))');


SELECT * 
  FROM TESTLIKE TL 
 WHERE upper(tl.acol) like '%SEE COMMENT%';

ты можешь воссоздать?

редактировать: в вашем запросе попробуйте это:

select * from TABLE 
WHERE UPPER(FIELD) = '=if(and(Robust_Mean>=20,Robust_Mean<=70),.03*(Robust_Mean+29),
if(Robust_Mean>70,.083*(Robust_Mean^.9),"See Comment"))';

посмотрим, даст ли это какие-либо результаты

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...