如何在检索时或检索后将单列数据库的多行数据合并为一行。我正在使用 JDBC 来检索数据。
下面是示例
列address
存储在数据库中,当在Excel中检索和填充时,它也填充在列的不同行(不同的单元格(中
plot-22, xyz
Bangalore
Karnataka
521638
从数据库中检索数据后,我必须将其放在一个 excel 文件中,如下所示在一个单元格中
plot-22, xyz Bangalore Karnataka 521638
我已经尝试了很多方法,但无法移除逃生线并组合成一条线。
我正在使用SQL Server数据库。
您可以使用 STUFF 函数,这有点棘手,您必须关心必须放置形成地址的所有记录的顺序。这样的事情可以工作:
declare @addr varchar(MAX)
SET @addr = STUFF( (SELECT ',' + [Address] FROM Table_1 WHERE Cust_ID = 1
ORDER BY sub_id FOR XML PATH('') ), 1, 1, '')
print @dir
这个线程对于理解东西是如何工作的非常有用:
Stuff和'For Xml Path'在Sql Server中是如何工作的
你的答案很简单,比如: 用于将数据从一列旋转为多列的PIVOT
https://learn.microsoft.com/en-us/sql/t-sql/queries/from-using-pivot-and-unpivot
我已经找到了解决方案。我们需要在字符串后附加双引号 ("( 以删除下一行字符
{
String values = rs.getString(j);
char ch = '"';
String nvalues = ch + values + ch; // To escape the next line character
}