【问题标题】:how to add hyphen in dynamic sql query如何在动态sql查询中添加连字符
【发布时间】:2016-01-24 13:41:39
【问题描述】:

我有一个包含 A、B、C、D 列(varchar 类型)的表。

从存储过程中,我从同一个表中获取数据。我在存储过程中创建了一个动态 sql 查询,用于从表中获取数据。

我想要的是,

需要将 B 列和 C 列与一个符号(连字符或冒号)组合在一起,并将其显示为一个单独的部分。

DECLARE @sSQL nvarchar(100);
DECLARE @symbol nvarchar(100);
SET @symbol='-'
SELECT @sSQL = N'SELECT [A], ([B], '+@symbol+', [C]) as Status FROM Table';
EXEC sp_executesql @sSQL

上面的查询对我不起作用。我需要将下面的查询作为动态查询。

SELECT A,B+'-'+C as Status FROM Table

请帮忙。

【问题讨论】:

    标签: sql sql-server stored-procedures dynamic-queries


    【解决方案1】:

    那里确实需要逗号。这是正确的语法:

    SELECT @sSQL = N'SELECT [A], ([B] + '''+@symbol+''' + [C]) as Status FROM Table';
    

    【讨论】:

    • Msg 102, Level 15, State 1, Line 1 ':' 附近的语法不正确。它不工作
    • SET @symbol=':' 我用过这个
    • 再次检查答案
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-10-19
    • 2011-07-30
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多