【问题标题】:SQL Not Like StatementSQL Not Like 语句
【发布时间】:2010-09-06 10:13:33
【问题描述】:

如何从 sys.tables 中选择表名不包含特殊字词(传入参数)的表。

我想选择包含单词“customer”的所有表,但不选择以“old”结尾的表 名义上。

数据库中的表名

客户1
客户2
客户3
客户旧1
客户老2

需要的输出

客户1
客户2
客户3

【问题讨论】:

    标签: sql tsql


    【解决方案1】:
    SELECT * FROM sys.tables
        WHERE TableName LIKE '%customer%'
          AND TableName NOT LIKE '%old' -- note the lack of trailing '%'
    

    LIKE (Transact-SQL)

    【讨论】:

      【解决方案2】:

      假设你有一个特殊词的参数,你可以这样做:

      WHERE TableName LIKE @specialWord + '%'
      AND TableName NOT LIKE '%' + @specialWord + '%old%'
      

      【讨论】:

        猜你喜欢
        • 2012-10-17
        • 2017-08-10
        • 1970-01-01
        • 1970-01-01
        • 2020-12-23
        • 1970-01-01
        • 2020-08-31
        • 2010-10-11
        • 1970-01-01
        相关资源
        最近更新 更多