如何排除所有字母而不做26个不同的语句?

lkaoscv7  于 2021-07-24  发布在  Java
关注(0)|答案(2)|浏览(260)

我想做一个更简单的陈述,而不是其他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)
vyswwuz2

vyswwuz21#

您可以使用正则表达式:

where flag like 'Y' and
      regexp_like(name.lot, '[^A-Z]$')
yqyhoc1h

yqyhoc1h2#

以下内容足以实现目标:

and right(name.lot, 1) not between 'A' and 'Z'

相关问题