如何在检索时或检索后将单列数据库的多行数据合并为一行.我正在使用 JDBC



如何在检索时或检索后将单列数据库的多行数据合并为一行。我正在使用 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
}

最新更新