如何在java中按日期获得销售?
我正在使用ms access数据库。我需要按日期获得销售。 这是我的表格规格:如何在java中按日期获得销售?,java,sql,jdbc,Java,Sql,Jdbc,我正在使用ms access数据库。我需要按日期获得销售。 这是我的表格规格: BILL_NO DATE SALE 1 8/30/2010 1000 2 8/30/2010 2000 3 8/31/2010 3000 4 8/31/2010 2000 如果我想在2010年8月31日出售,它应该返回5000 我已经在数据库中使用java.sql.Date对象插入了日期值。应该注意的是,Date是MS Access中的。您
BILL_NO DATE SALE
1 8/30/2010 1000
2 8/30/2010 2000
3 8/31/2010 3000
4 8/31/2010 2000
如果我想在2010年8月31日出售,它应该返回5000
我已经在数据库中使用java.sql.Date对象插入了日期值。应该注意的是,
Date
是MS Access中的。您需要使用大括号来指定它。此外,您希望使用将人类可读的日期字符串转换为fullworthy对象,然后您可以构造一个可按常规方式设置的对象
select
sum(SALE) as TOTAL_SALE
from
tbl
where
DATE='8/31/2010'
group by
DATE
这是一个开始:
String sql = "SELECT SUM(SALE) as TOTAL_SALE FROM tbl WHERE [DATE] = ? GROUP BY [DATE]";
java.util.Date date = new SimpleDateFormat("MM/dd/yyyy").parse("8/31/2010");
Connection connection = null;
PreparedStatement statement = null;
ResultSet resultSet = null;
int totalSale = 0;
try {
connection = database.getConnection();
statement = connection.prepareStatement(sql);
statement.setDate(new java.sql.Date(date.getTime());
resultSet = statement.executeQuery();
if (resultSet.next()) {
totalSale = resultSet.getInt("TOTAL_SALE");
}
} finally {
close(connection, statement, resultSet);
}
它的工作很好。。。Thanx。。请你告诉我,如果我想找到每周、每月、每年的销售,我该怎么做?不客气。别忘了把答案标为已接受。对于新问题,本质上你应该问一个新问题,但我会给你一个提示:阅读数据库提供的SQL日期/时间函数。提供MS access特定文档。页面中间有一节日期函数。单击此处查找信息和示例。
String sql = "SELECT SUM(SALE) as TOTAL_SALE FROM tbl WHERE [DATE] = ? GROUP BY [DATE]";
java.util.Date date = new SimpleDateFormat("MM/dd/yyyy").parse("8/31/2010");
Connection connection = null;
PreparedStatement statement = null;
ResultSet resultSet = null;
int totalSale = 0;
try {
connection = database.getConnection();
statement = connection.prepareStatement(sql);
statement.setDate(new java.sql.Date(date.getTime());
resultSet = statement.executeQuery();
if (resultSet.next()) {
totalSale = resultSet.getInt("TOTAL_SALE");
}
} finally {
close(connection, statement, resultSet);
}