我有一個數據驅動的橫幅系統,運行得非常好。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 +
我希望這是有道理的。
非常感謝