Java 如何将Resultset连接到字符串变量

Java 如何将Resultset连接到字符串变量,java,sql,Java,Sql,我想将我的ItemName列值设置为一个与逗号分开的字符串 我试过这样做,但没用 String sql = "SELECT `ItemName` FROM `invoicelist` WHERE `InvoiceId` = '"+invoicenum+"' "; try { ResultSet rs = CODE.DbAccess.getdata(sql); while (rs.next()) { Strin

我想将我的ItemName列值设置为一个与逗号分开的字符串

我试过这样做,但没用

        String sql = "SELECT `ItemName` FROM `invoicelist` WHERE `InvoiceId` = '"+invoicenum+"' ";
        try {
        ResultSet rs =   CODE.DbAccess.getdata(sql);


        while (rs.next()) {
        String em =  rs.getString("ItemName");

         description = em.replace("\n", ",");
         System.out.println(description);  


        }

如果要在java中进行连接,则应更改为:

String sql = "SELECT `ItemName` FROM `invoicelist` WHERE `InvoiceId` = '" + invoicenum + "' ";
try { 
    ResultSet rs =   CODE.DbAccess.getdata(sql);

    while (rs.next()) {
        description += rs.getString("ItemName") + ",";
    } 

    description = description.substring(0, description.length() - 1);

    //System.out.println(description);  
}

如果要在查询中连接,则可以搜索
GROUP\u CONCAT()函数

,如果要在java中进行连接,则应更改为:

String sql = "SELECT `ItemName` FROM `invoicelist` WHERE `InvoiceId` = '" + invoicenum + "' ";
try { 
    ResultSet rs =   CODE.DbAccess.getdata(sql);

    while (rs.next()) {
        description += rs.getString("ItemName") + ",";
    } 

    description = description.substring(0, description.length() - 1);

    //System.out.println(description);  
}
String sql = "SELECT `ItemName` FROM `invoicelist` WHERE `InvoiceId` = '" + invoicenum + "' ";
try { 
    ResultSet rs =   CODE.DbAccess.getdata(sql);
    StringBuilder builder = new StringBuilder(); // used to store string and append data further if you want
    while (rs.next()) {
        builder.append(rs.getString("ItemName").append(","); // adding data/Item name to builder and appending comma after adding item name
    } 
    if(builder.length() > 0){ // if there's some data inside builder
        builder.setLength(builder.length() - 1); // remove last appended comma from builder
    }
    System.out.println("Command Separated Data" + builder.toString()); // final data of item name
}
如果要在查询中连接,则可以搜索
GROUP\u CONCAT()函数

String sql = "SELECT `ItemName` FROM `invoicelist` WHERE `InvoiceId` = '" + invoicenum + "' ";
try { 
    ResultSet rs =   CODE.DbAccess.getdata(sql);
    StringBuilder builder = new StringBuilder(); // used to store string and append data further if you want
    while (rs.next()) {
        builder.append(rs.getString("ItemName").append(","); // adding data/Item name to builder and appending comma after adding item name
    } 
    if(builder.length() > 0){ // if there's some data inside builder
        builder.setLength(builder.length() - 1); // remove last appended comma from builder
    }
    System.out.println("Command Separated Data" + builder.toString()); // final data of item name
}
另一种方法是从SQL本身解析结果。(这是一个与MySQL兼容的代码)

另一种方法是从SQL本身解析结果。(这是一个与MySQL兼容的代码)


是否要连接结果集中的所有
ItemName
值?您好,是MySQL、Oracle、Sql server、PostgreSQL等吗?您想要SQL解决方案还是Java解决方案?看起来您并不想要真正的连接,只是需要一些字符串替换!!你能给出一个原始ItemName的例子和你期望的结果吗?@DanielE。Java解决方案是否要连接结果集中的所有
ItemName
值?您好,是MySQL、Oracle、Sql server、PostgreSQL等吗?您想要SQL解决方案还是Java解决方案?看起来您并不想要真正的连接,只是需要一些字符串替换!!你能给出一个原始ItemName的例子和你期望的结果吗?@DanielE。Java解决方案