$sql = 'SELECT have_show FROM `date` WHERE DATE(`date`.day) = ?';
$this->db->query($sql, array($date)); //works fine
这可以正常工作。
$sql = 'SELECT actors, visitors, tickets, have_show FROM show
JOIN `date` ON show.day = `date`.id
WHERE DATE(`date`.day) = ?';
$this->db->query($sql, array($date));
这里,使用连接语句,它给出0结果。
数据库架构
id(AI) day(INT FK-date.id) actors(INT) visitors(INT)
1 2 3 45
id(AI) day(DATE) have_show(BOOLEAN)
1 2012-12-06 0
2 2012-12-07 1
codeigniter的活动记录也是如此。
你们有没有遇到过这种问题?
答案 0 :(得分:0)
尝试这个
$sql = 'SELECT actors, visitors, tickets, acts FROM `show`
JOIN `date` ON show.day = date.id
WHERE DATE(date.day) = ?';
$this->db->query($sql, array($date));
您在date.day
和date.id
之间混合。
或者你有show.id
而不是show.day
所以看看你的表中有什么,如果是的话
通过show.day
show.id
编辑:
$sql = 'SELECT s.day s.actors, s.visitors, s.tickets, s.acts d.day FROM `show` s
JOIN `date` d ON s.day = d.id ';