Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/59.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql sql:如何将行中的值转换为带有前缀和后缀的变量_Mysql_Sql Server - Fatal编程技术网

Mysql sql:如何将行中的值转换为带有前缀和后缀的变量

Mysql sql:如何将行中的值转换为带有前缀和后缀的变量,mysql,sql-server,Mysql,Sql Server,我在表中有以下值 Exec_Date -------- 2017-02-17 2017-02-18 2017-02-19 2017-02-20 2017-02-20 列表中的值会有所不同,我需要放置一个查询并将所有不同的值从行中获取到一个带有前缀和siffix的变量 像 我试着用 DECLARE @Names VARCHAR(MAX) SELECT @Names = COALESCE(@Names + '],', '[') + Exec_Date FROM #TempTable SELE

我在表中有以下值

Exec_Date
--------
2017-02-17
2017-02-18
2017-02-19
2017-02-20
2017-02-20
列表中的值会有所不同,我需要放置一个查询并将所有不同的值从行中获取到一个带有前缀和siffix的变量

我试着用

DECLARE @Names VARCHAR(MAX) 
SELECT @Names = COALESCE(@Names + '],', '[') + Exec_Date 
FROM #TempTable

SELECT @Names
但它返回如下,这是不正确的

[2017-02-17],2017-02-18],2017-02-19],2017-02-20

我认为您正在寻找和:

产生:

[2017-02-17],[2017-02-18],[2017-02-19],[2017-02-20]

只需添加
'],['
而不是
'],'
,然后在最后一行中添加
]

下一步:-

Create table #TempTable (Exec_Date VARCHAR(MAX))
go

insert into #TempTable values 
('2017-02-17'),
('2017-02-18'),
('2017-02-19'),
('2017-02-20')

DECLARE @Names VARCHAR(MAX) 
SELECT @Names = COALESCE(@Names + '],[', '[') + Exec_Date -- '],[' is added instead of '],'
FROM  #TempTable

SELECT @Names =  @Names  + ']' -- this line is Added 

SELECT @Names
结果:-

[2017-02-17],[2017-02-18],[2017-02-19],[2017-02-20]
老板:)。再次谢谢你
Create table #TempTable (Exec_Date VARCHAR(MAX))
go

insert into #TempTable values 
('2017-02-17'),
('2017-02-18'),
('2017-02-19'),
('2017-02-20')

DECLARE @Names VARCHAR(MAX) 
SELECT @Names = COALESCE(@Names + '],[', '[') + Exec_Date -- '],[' is added instead of '],'
FROM  #TempTable

SELECT @Names =  @Names  + ']' -- this line is Added 

SELECT @Names
[2017-02-17],[2017-02-18],[2017-02-19],[2017-02-20]