mysql的时间段查询
黄小琴 2011-06-01 01:37:34 表的结构
CREATE TABLE `xiaoshoudan` (
`xiaoshoudanhao` varchar(255) NOT NULL,
`date` date default NULL,
`kehu_ID` int(11) default NULL,
`user_ID` int(11) default NULL,
`num` int(11) NOT NULL default '1',
`totalPrice` float default NULL,
PRIMARY KEY (`xiaoshoudanhao`),
KEY `FK77BCFE97148826CC` (`kehu_ID`),
KEY `FK77BCFE973D43702C` (`user_ID`),
CONSTRAINT `FK77BCFE97148826CC` FOREIGN KEY (`kehu_ID`) REFERENCES `kehu` (`ID`),
CONSTRAINT `FK77BCFE973D43702C` FOREIGN KEY (`user_ID`) REFERENCES `user` (`ID`)
) ENGINE=InnoDB DEFAULT CHARSET=gb2312;
从数据库查询一个时间段的记录代码
//按时间段查询
public ResultSet getByShiJianDuan(String dateFirst,String dateLast){
conn=new GetConn().getConn();
String sql="select xiaoshoudan.*, xiaoshoudan_shangping.* from xiaoshoudan,xiaoshoudan_shangping where " +
"XiaoShouDan_xiaoshoudanhao=xiaoshoudanhao and date between SELECT DATE_SUB('"+dateFirst+"', INTERVAL 1 DAY) and SELECT DATE_SUB('"+dateLast+"', INTERVAL 1 DAY) ";
try {
stmt=conn.createStatement();
rs=stmt.executeQuery(sql);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return rs;
}
dateFirst dateLast 是一个日期型的字符串,比如“2008-02-13”这种形式的,要怎么改上面的sql语句才能得到正确的结果
希望知道的人帮我解决一下