微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

提取REGEXP子字符串SQL Server

如何解决提取REGEXP子字符串SQL Server

CONVERT(
INT, 
(REPLACE(
    SUBSTRING(
        nome,
        (
            PATINDEX(
                '%[0-9]%',
                REPLACE(
                    REPLACE(
                        nome,
                        '1/2',
                        ''
                    ),
                    '1/4',
                    ''
                )
            )
        ),
        4
    ),
    'G',
    ''
))) as pesototal

这样解决了问题,谢谢。

解决方法

我想从此查询中提取特定的数字值…

列:名称此示例有四行:

  • 1/2产品1 some_description 1200 GR更多数据…(UND)
  • 1/4 Product2 some_description 2400G更多数据(KG更多数据)
  • 商品3 some_description 2200 GRS更多数据…
  • 1/4产品4 some_description 1800GR更多数据UND …

我只想要整数值。我想要查询:

  • 1200
  • 2400
  • 2200
  • 1800

模式是:

  • [0-9] {4} G
  • [0-9] {4} GR
  • [0-9] {4} GRS

如何在SQL查询上使用此正则表达式来解析属性值?

SELECT FROM myTable SUBSTRING(name,(PATINDEX('%[0-9]%',[name])),4) as peso

这会提取一些值,但顺序不正确…我认为我可以将LEFT的长度应用到整数值,但是我不知道如何解决它。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。