数据库结构如下:
| bid | int(10) | NO | | 0 | |
| bname | varchar(50) | NO | | | |
| endtime | int(11) | NO | | 0 | |
+----------------+---------------------+------+-----+---------+----------------+endtime里存的是时间戳,现在想查endtime与当前时间的间隔小于等于3天的查出来,不知这样的where应该如何写呢?
| bid | int(10) | NO | | 0 | |
| bname | varchar(50) | NO | | | |
| endtime | int(11) | NO | | 0 | |
+----------------+---------------------+------+-----+---------+----------------+endtime里存的是时间戳,现在想查endtime与当前时间的间隔小于等于3天的查出来,不知这样的where应该如何写呢?
解决方案 »
- mysql 5.5 无法远程链接 root用户 host已经改为%
- 不限数据库种类,求2道题,能测出中级数据库开发工程师和高级数据库开发工程师?
- SQL里怎样查询STUDENT表中姓名相同数据
- 百万记录的库已经建立了索引但还是很慢,请问该如何解决呢?
- 关于MYSQL5连接字符串的问题
- mysql局域网连接问题
- 求解决,把多种情况的update合并成一个
- sql语句中对A表对B表连续关联2次的问题
- mysql prepare from excute 出错
- 导入SQL数据库提示Failed to open file 'load_departments.dump'
- my sql连接
- mysql的备份问题
是datetime就简单。select * from table where endtime<=adddate(Now(),3) and endtime >=adddate(Now(),-3);
select * from tablename where datediff(now(),from_unixtime(endtime)) <=3 ;
datediff(now(),from_unixtime(endtime)) <=3这个我试过了,endtime如果不是字段名没问题,但它是字段名,就取不到时间
CREATE TABLE IF NOT EXISTS `fz_shop` (
`sid` int(10) NOT NULL AUTO_INCREMENT COMMENT '店铺ID',
`bid` int(10) NOT NULL DEFAULT '0' COMMENT '品牌ID',
`uid` int(10) NOT NULL,
`bname` varchar(50) NOT NULL COMMENT '品牌名称',
`starttime` int(10) NOT NULL DEFAULT '0' COMMENT '开通时间',
`endtime` int(11) NOT NULL DEFAULT '0' COMMENT '付费到期时间',
`isstop` tinyint(1) NOT NULL DEFAULT '1' COMMENT '0待开通,1开通,2停止,3强制停止',
PRIMARY KEY (`sid`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=19 ;--
-- 导出表中的数据 `fz_shop`
--INSERT INTO `fz_shop` (`sid`, `bid`, `uid`, `bname`, `starttime`, `endtime`, `isstop`) VALUES
(17, 1, 31, '金牌七匹狼', 1197993600, 1228406400, 1),
(18, 0, 32, 'aaa', 0, 0, 1);
select * from fz_shop where datediff(now(),from_unixtime(endtime)) <=3 ;query result(1 records)
sid bid uid bname starttime endtime isstop
17 1 31 1197993600 1228406400 1