0

我已经建立了一个 MySQL 数据库,我的连接工作正常,并且我已经掌握了如何使用 ResultSet 从数据库中检索数据的方法。我目前遇到的问题是,作业要求以 CSV 格式打印几个不同表中的某些列,同时替换一些满足某些条件的值;即,如果特定航班的机票成本低于某个价格,则将成本替换为“LOW!” 在 CSV 文件的那一部分。这是我所拥有的:

public void generate() throws IOException, SQLException{

    FileWriter fw = new FileWriter("datamine.csv");
    PrintWriter out = new PrintWriter(fw);
    Statement st = conn.createStatement();

    out.println("Airline,FlightNumber,Source,Destination,DayOfWeek,Seats,Daysbefore,Price");

    //ResultStatements here

    out.flush();
    out.close();
    fw.close();

}

我知道如何查询数据库,我想我可以弄清楚如何从我需要的表中合并列,但这只会打印列中的所有内容。有没有办法遍历列,评估条件值,然后将其附加到输出文件?

4

1 回答 1

1

你需要一个while循环和一个if测试。

while (rs.next()) {

    String airline = rs.getString(1);
    ...
    BigDecimal price = rs.getBigDecimal(8);
    if (price.compareTo(limit) < 0) {
        csvFile.print("LOW!");
    }
    else {
        csvFile.print(price);
    }
}
于 2013-04-14T21:56:13.297 回答