我有一个数据驱动的横幅系统,运行得非常好。mysql查询个别行上的开始日期和结束日期
它运行关闭两个表
banner_frames 这包含各行的所有横幅帧和包括图像,文本和帧布局信息。
banner_frameset 这包含将查询引入查询的banner_frames行作为逗号分隔值的分组信息。
有一个php变量$bannerpageid
如果在页面上设置,则运行此查询。
mysql_select_db($database_banners, $banners);
$query_banner_frameset = "SELECT banner_frameset.*, banner_frames.*
FROM banner_frameset, banner_frames
WHERE banner_frameset.bp_ID = $bannerpageid
AND FIND_IN_SET(banner_frames.bf_ID, banner_frameset.bp_frames)
AND banner_frames.bf_live = 1
ORDER BY FIND_IN_SET(banner_frames.bf_ID, banner_frameset.bp_frames)";
$banner_frameset = mysql_query($query_banner_frameset, $banners) or die(mysql_error());
$row_banner_frameset = mysql_fetch_assoc($banner_frameset);
$totalRows_banner_frameset = mysql_num_rows($banner_frameset);
我想修改查询以包括针对每一帧行的可选起始日期和/或期满日期,只显示受影响的帧,如果当前的日期/时间比设定的条目小于或大于任何横幅框架行。
的开始日期和到期日的banner_frame列: bf_datestart
和bf_dateexpire
我想实现的是在拉所有banner_frames.bf_ID
在banner_frameset.bp_frames
上市,要么省略或有标题框行依赖于是否设置开始日期和到期日期中的一个或两个,同时仍检索所有其他行,其中开始或到期都设置为NULL
执行此查询的最有效方法是什么?查询将被修改,还是需要在我的do/while loo之前将它作为单独的if语句运行P +
我希望这是有道理的。
非常感谢