Sql H2确定字符串值是否为数字

Sql H2确定字符串值是否为数字,sql,jdbc,h2,Sql,Jdbc,H2,这是我第一次使用H2,我尝试只选择没有数字ID的记录(例如H27384WK将有效,但398453将无效)。在网上研究之后,我找不到任何解决方法,而且这些方法似乎都没有帮助。如何实现此功能?一种方法是使用translate: where translate(id, 'A0123456789', 'A') <> '' 一种方法是使用translate: where translate(id, 'A0123456789', 'A') <> '' 另一种解决方案是上下组合 W

这是我第一次使用H2,我尝试只选择没有数字ID的记录(例如H27384WK将有效,但398453将无效)。在网上研究之后,我找不到任何解决方法,而且这些方法似乎都没有帮助。如何实现此功能?

一种方法是使用translate:

where translate(id, 'A0123456789', 'A') <> ''

一种方法是使用translate:

where translate(id, 'A0123456789', 'A') <> ''

另一种解决方案是上下组合

WHERE NOT (LOWER(id) = UPPER(id))

您可能需要为空值和/或空值添加其他条件。

另一种解决方案是使用上限和下限的组合

WHERE NOT (LOWER(id) = UPPER(id))

您可能需要为NULL和/或空值添加其他条件。

实际上对我不起作用。也许我的H2版本太旧了(1.3.x),但它似乎不支持翻译(…)。下面列出的下(…)=上(…)行得通。实际上对我不起作用。也许我的H2版本太旧了(1.3.x),但它似乎不支持翻译(…)。下面列出的下部(…)=上部(…)确实有效。我发现有必要添加和id!=''到我的where子句。我发现有必要添加和id!=''到我的where子句。