大家好,这个sql语句该怎么写呢?
CREATE TABLE `ad` (
`id` int(5) NOT NULL auto_increment,
`tid` int(5) NOT NULL default '0',
`name` varchar(30) NOT NULL default '',
`pic_url` varchar(100) NOT NULL default '',
`littlename` varchar(20) NOT NULL default '',
`url` varchar(255) NOT NULL default '',
`starttime` date NOT NULL default '0000-00-00',
`endtime` date NOT NULL default '0000-00-00',
`show` int(1) NOT NULL default '0',
PRIMARY KEY (`id`)
) TYPE=MyISAM AUTO_INCREMENT=1 ;
要取出endtime的时间值大于当日的时间值的语句。
endtime是date格式的。
如果直接用一个sql语句怎么写呢?
我写到这一步来了,SELECT UNIX_TIMESTAMP( endtime ) AS tt, UNIX_TIMESTAMP( now( ) ) AS now, ad . *
FROM `ad`
ORDER BY id DESC
LIMIT 0 , 5
最后怎么把tt和now进行比较呢?直接在where后面加
where tt>now不行。那么是否能用一个语句呢?或用什么连接查询可以呢?
CREATE TABLE `ad` (
`id` int(5) NOT NULL auto_increment,
`tid` int(5) NOT NULL default '0',
`name` varchar(30) NOT NULL default '',
`pic_url` varchar(100) NOT NULL default '',
`littlename` varchar(20) NOT NULL default '',
`url` varchar(255) NOT NULL default '',
`starttime` date NOT NULL default '0000-00-00',
`endtime` date NOT NULL default '0000-00-00',
`show` int(1) NOT NULL default '0',
PRIMARY KEY (`id`)
) TYPE=MyISAM AUTO_INCREMENT=1 ;
要取出endtime的时间值大于当日的时间值的语句。
endtime是date格式的。
如果直接用一个sql语句怎么写呢?
我写到这一步来了,SELECT UNIX_TIMESTAMP( endtime ) AS tt, UNIX_TIMESTAMP( now( ) ) AS now, ad . *
FROM `ad`
ORDER BY id DESC
LIMIT 0 , 5
最后怎么把tt和now进行比较呢?直接在where后面加
where tt>now不行。那么是否能用一个语句呢?或用什么连接查询可以呢?
FROM `ad`
where UNIX_TIMESTAMP( endtime )>UNIX_TIMESTAMP( now( ) )
ORDER BY id DESC
LIMIT 0 , 5