以下模式的sql查询

标签 sql sql-server database

我有一个表:名称

当我执行:SELECT * FROM Name 时,结果为:

Name
======
aaa
bbb
ccc
sss

我希望结果只在一行中:

Name
====
aaa bbb ccc sss

我怎样才能得到这个?

最佳答案

试试这个 -

DECLARE @temp TABLE
(
      col NVARCHAR(50)
)

INSERT INTO @temp (col)
VALUES 
    ('aaa'),
    ('bbb'),
    ('ccc'),
    ('sss')

SELECT str_string = (
    SELECT col + ' '
    FROM @temp
    FOR XML PATH(''), TYPE).value('.', 'NVARCHAR(MAX)')

或者试试这个——

DECLARE @string NVARCHAR(MAX) = ''

SELECT @string = @string + col + ' '
FROM @temp

SELECT @string

关于以下模式的sql查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16167322/

相关文章:

java - 采访任务: Limit number of concurrent requests with tokens

php - 我相信关于如何将信息插入数据库进行更新的查询存在错误

database - 更新 Mysqldump 文件

mysql - 插入 SQL 错误

php - 在 DUPLICATE KEY 错误后获取主键?

java - 在 hibernate 中如何以编程方式设置事务的隔离级别,或者如何创建两个具有不同隔离级别的事务

SQL Group By 对创建的列进行分组?

python - 使用 python 或 ironpython 访问 mssql 的最简单方法是什么?

sql - 在现有表中添加具有主键的列

php - MySQL:按 x/按 y 分组表