sql表达式模式匹配

发布于 2024-12-09 03:05:37 字数 181 浏览 1 评论 0原文

我想检查 sql 中的模式,如果该表达式(或表格单元格)中有除数字以外的任何内容,则应返回 1。如果整个单元格只有数字值,则应返回 0

eq:

case when '200290' like [anything other than numbers]
then 1
else o

I want to check for a pattern in sql such that if there is anything in that expression (or table cell) other than numeric it should return 1. If that whole cell has only numeric values it should return 0

eq:

case when '200290' like [anything other than numbers]
then 1
else o

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

葬花如无物 2024-12-16 03:05:37

在 SQL Server 中,您可以使用类似的东西(我不会为您编写整个函数):

DECLARE @t varchar(100) = '231321321321'

SELECT CASE WHEN PATINDEX('%[^0-9]%', @t) > 0 THEN 1
            ELSE 0 END

In SQL Server, you can use something like (I'm not writing the whole function for you):

DECLARE @t varchar(100) = '231321321321'

SELECT CASE WHEN PATINDEX('%[^0-9]%', @t) > 0 THEN 1
            ELSE 0 END
错爱 2024-12-16 03:05:37
SELECT CASE CHARACTERS(OTRANSLATE(<your_string>,'a1234567890','a')) 
WHEN 0 THEN 0 ELSE 1 END;

例如:

     -- BTEQ  Enter your SQL request or BTEQ command:
SELECT CASE CHARACTERS(OTRANSLATE('12345','a1234567890','a')) 
WHEN 0 THEN 0 ELSE 1 END;

* 查询已完成。找到一排。一列返回。
*
总经过时间为 1 秒。

<CASE  expression>
------------------
                 0

SELECT CASE CHARACTERS(OTRANSLATE('1a23b45c','a1234567890','a')) WHEN 0 THEN 0 ELSE 1 END;

* 查询已完成。找到一排。一列返回。
*
总耗时为 1 秒。

<CASE  expression>
------------------
                 1
SELECT CASE CHARACTERS(OTRANSLATE(<your_string>,'a1234567890','a')) 
WHEN 0 THEN 0 ELSE 1 END;

Ex.:

     -- BTEQ  Enter your SQL request or BTEQ command:
SELECT CASE CHARACTERS(OTRANSLATE('12345','a1234567890','a')) 
WHEN 0 THEN 0 ELSE 1 END;

* Query completed. One row found. One column returned.
*
Total elapsed time was 1 second.

<CASE  expression>
------------------
                 0

SELECT CASE CHARACTERS(OTRANSLATE('1a23b45c','a1234567890','a')) WHEN 0 THEN 0 ELSE 1 END;

* Query completed. One row found. One column returned.
*
Total elapsed time was 1 second.

<CASE  expression>
------------------
                 1
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文