我有3张桌子。
集, 季节, Episode_Season
我已经提出了这样的观点
"CREATE VIEW episode_season_view AS SELECT * FROM episode
INNER JOIN episode_season ON episode.id = episode_season.episode_id
INNER JOIN season ON season.id = episode_season.season_id";
哪个btw就像魅力...... 现在我在MysqlWorkbench中运行此查询
"SELECT * FROM season_episode_view
WHERE first_aired > CURDATE() AND season_id = 600";
它返回正确的结果。 但是当我这样做时,
R::getRow("SELECT * FROM season_episode_view
WHERE first_aired > ? AND season_id = ?", array(date('Y-m-d'), $season_id));
它返回0行......我不明白为什么?
答案 0 :(得分:0)
这只是一个猜测,但不是使用PHP的日期函数,而是使用Redbean的MySQL函数,可能还有getAll()
:
$results=R::getAll("SELECT * FROM season_episode_view
WHERE first_aired > ? AND season_id = ?", array(R::$f->curdate(), $season_id));
如果这不起作用,您可以尝试内置查询:
$row=R::$f->begin()
->select('*')->from('season_episode_view')
->where(' first_aired > ? AND season_id = ?')->put(R::$f->curdate(),$season_id)
->get('row');
我能想到的另一件事是first_aired
列由于某种原因不喜欢PHP的date()
,可能是由于字段类型?