Как я могу исключить все буквы, не сделав 26 различных утверждений? - PullRequest
0 голосов
/ 03 августа 2020

Я хотел бы сделать более простое утверждение вместо 26 других утверждений «НЕ НРАВИТСЯ», кто-нибудь знает, как это сделать? Таким образом, я могу включить все буквы алфавита, а не только отдельные буквы. Спасибо.

SELECT *
FROM name
WHERE flag LIKE 'Y'
AND name.autotrackchild IS NULL
AND substring(name.lot,LENGTH(name.lot),length(name.lot)) NOT LIKE 'A'
AND substring(name.lot,LENGTH(name.lot),length(name.lot)) NOT LIKE 'B'
AND substring(name.lot,LENGTH(name.lot),length(name.lot)) NOT LIKE 'C'
--REMOVES CHILD LOTS (ANYTHING WITH A LETTER ON THE END OF IT'S LENGTH)

Ответы [ 2 ]

3 голосов
/ 03 августа 2020

Вы должны использовать регулярные выражения:

where flag like 'Y' and
      regexp_like(name.lot, '[^A-Z]$')
1 голос
/ 03 августа 2020

Для цели достаточно:

and right(name.lot, 1) not between 'A' and 'Z'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...