使用MySQL和JDBC进行查询之间 [英] BETWEEN query using JDBC with MySQL
本文介绍了使用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屋!
查看全文