使用MySQL和JDBC进行查询之间 [英] BETWEEN query using JDBC with MySQL

查看:125
本文介绍了使用MySQL和JDBC进行查询之间的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

public int getdata(String startDate, String endDate) {
    PreparedStatement ps;
    int id = 0;
    try {
        /*
         * SimpleDateFormat formatter = new SimpleDateFormat("dd/MM/yyyy");
         * java.util.Date startDat = formatter.parse(startDate);
         * java.util.Date endDat = formatter.parse(endDate);
         */
        // ps = connection.prepareStatement("select * from project.order Where PO_Date Between " + startDate + "' AND '" + endDate + "'");
        //ps = connection.prepareStatement("select * from project.order where PO_Date between ? AND DATE_ADD( ?, INTERVAL 1 DAY) ");
        //ps = connection.prepareStatement("SELECT * FROM project.order WHERE PO_Date between ? AND ?");
        ps = connection.prepareStatement("SELECT * FROM project.order WHERE PO_Date >= ? AND PO_Date <= ?");
        //ps = connection.prepareStatement("SELECT * FROM project.order WHERE PO_Date(now())>= ? AND PO_Date(now())<=?");  
        /*
         * ps.setDate(1, new java.sql.Date(startDate)); ps.setDate(2, new
         * java.sql.Date(endDate.getTime()));
         */
        ps.setString(1, startDate);
        ps.setString(2, endDate);

        ResultSet rs = ps.executeQuery();
        // System.out.println("value of rs "+rs);

        while (rs.next()) {
            ArrayList<String> arrlist = new ArrayList<String>();
            System.out.println(rs.getString(2));
            System.out.println(rs.getInt(1));
            System.out.println(rs.getString(4));
            System.out.println(rs.getString(5));
            System.out.println(rs.getString(6));
            System.out.println("***************");
            // System.out.print(rs.getDate("endDate"));
            Iterator<String> itr = arrlist.iterator();
            while (itr.hasNext()) {
                System.out.println(itr.next());
            }
        }
        rs.close();

    } catch (Exception e) {
        System.out.println(e.getMessage());
    }
    return id;
}
}

我试图解决,但我要退出比赛,除了最后一个日期意味着我们要输入的endDate.

I tried to solve but I am getting out except last date means endDate which we give as a input.

我尝试了5个不同的查询,但仍然得到了相同的结果.

I tried around 5 different queries but still I am getting the same.

推荐答案

尝试一下

SELECT * FROM project.order po
   WHERE po.PO_Date IS NOT NULL
     AND TO_DATE(PO_Date, 'DD/MM/RRRR') >=
         TO_DATE('17/02/2015', 'DD/MM/RRRR')
     AND TO_DATE(PO_Date, 'DD/MM/RRRR') <=
         TO_DATE('20/06/2015', 'DD/MM/RRRR');

这篇关于使用MySQL和JDBC进行查询之间的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆