JDBC MYSQL ORDER BY在MYSQL Workbench中工作,但不在Java应用程序中工作

时间:2018-03-18 12:40:19

标签: java mysql mysql-workbench

我正在构建一个小型控制台应用程序来帮助我管理我的财务状况。目前我只是查询我的MYSQL数据库中的所有数据,但我希望存储的购买从最新日期到最新日期显示。

当我在工作台中运行查询时,我得到了所需的输出。我Litterally将查询字符串复制并粘贴到我的java应用程序中,但ORDER BY子句似乎没有被编译。建议?

mysql所需的输出工作

MYSQL Workbench query and output

我用于查询的代码

Java method that queries DB

    // code used to call getItems within switch in another class.
    switch (userMenuChoice) {
            case 1:
                ArrayList<Item> items = new ArrayList<Item>(db.getItems());
                displayItems(items);
                break; // there are more case statements but not included here

    // method to display all the items from query result set
    public static void displayItems(ArrayList<Item> items) {
    Collections.sort(items);
    for(Item item:items) {
        System.out.println(String.format("Date: %-15s", item.getSaleDate())
                + String.format("Store: %-15s", item.getStore())
                + String.format("Type: %-15s", item.getItemType())
                + String.format("Cost: %-10s", item.getItemPrice()));
    }
}

不理想的输出。由于某种原因忽略ORDER BY子句

enter image description here

1 个答案:

答案 0 :(得分:0)

从displayItems方法中删除Collections.sort()调用,该调用应该修复它。