这是我的数据库示例:
状态日期
Q 2012-08-02。
如果我运行我的应用程序意味着我希望显示2.这是做以下信息。 - 检查数据库当前月份+状态= Q ,显示完全匹配信息的数量。例如,总共2表示输出显示为2.
我已经完成了当前日期+状态= Q 信息的总计数值。已成功完成。 我在这里使用这段代码:
public class RetailerWs {
public int data(){
int count=0;
//count++;
try{
Class.forName("com.mysql.jdbc.Driver");
Connection con = DriverManager
.getConnection("jdbc:mysql://localhost:3306/pro","root","");
PreparedStatement statement = con
.prepareStatement("select * from orders where status='Q' AND date=CURDATE()");
ResultSet result = statement.executeQuery();
while(result.next()) {
// Do something with the row returned.
count++; //if the first col is a count.
}
}
catch (Exception exc) {
System.out.println(exc.getMessage());
}
return count;
}
}
另一个类是:
public class Demo {
public static void main(String[] args){
RetailerWs obj = new RetailerWs();
System.out.println(obj.data());
}
}
以上代码获取当前日期+状态= Q 的信息。 请帮我编写当前月份+状态= Q ....
的代码答案 0 :(得分:0)
应该是:
select * from orders where status='Q' AND MONTH(date) = MONTH(CURDATE())
有关MySQL日期和时间函数的更多信息,请参阅THIS。
本周,请尝试:
select * from orders where status='Q' AND WEEK(date) = WEEK(CURDATE())
对于本年度的一周,请尝试:
select * from orders where status='Q' AND WEEK(date) = WEEK(CURDATE()) AND YEAR(date) = YEAR(CURDATE())
要将其全部用于一个支票,请使用:
select * from orders where status='Q' AND YEARWEEK(date) = YEARWEEK(CURDATE())