【问题标题】:Declaring Variables, LIKE and booleans声明变量、LIKE 和布尔值
【发布时间】:2022-01-20 22:04:22
【问题描述】:

“LIKE”和布尔值在变量(IN SQL)中的行为方式是否相同?或者有没有办法做到这一点?

我正在尝试声明一个变量并将该变量带入我的 WHERE 以及查询中的其他任何地方。

DECLARE @SKU VARCHAR(10)
SET @SKU = LIKE 'RUSH%'

SELECT Name, SKU, Rate
FROM PriceTable
WHERE SKU = @SKU

【问题讨论】:

    标签: sql variables boolean sql-like


    【解决方案1】:

    你不能做你想做的事。该变量只是一个VARCHAR。它不能包含逻辑。

    这完成了同样的事情,但逻辑需要在语句中,而不是在变量中。

    DECLARE @SKU_FILTER VARCHAR(10)
    SET @SKU_FILTER = 'RUSH%'
    
    SELECT Name, SKU, Rate
    FROM PriceTable
    WHERE SKU LIKE @SKU_FILTER
    

    【讨论】:

    • 我总是想偷工减料!谢谢你。不过,快速提问,假设我希望在整个查询过程中忽略该变量,而不必手动执行此操作。有什么我可以将其设置为等于的东西会让这变得容易吗?
    • @supeercod SET @SKU_FILTER = '%' 禁用过滤器并恢复所有结果。
    猜你喜欢
    • 1970-01-01
    • 2014-08-22
    • 2015-05-23
    • 1970-01-01
    • 1970-01-01
    • 2011-02-26
    • 2013-07-05
    • 2023-03-13
    相关资源
    最近更新 更多