我无法弄清楚如何修复此查询。
这是我的 CodeIgniter 代码
return $this->db
->select('vehVin, vehMake, vehModel, seller, dealership, buyer, logistics.warehouseName, transportDate, car_tracking.keys, car_tracking.window')
->where('transportDate <', $yesterday)
->where('(car_tracking.keys', "'0'", FALSE)
->or_where("car_tracking.stickers = '0')", NULL, FALSE)
->join('logistics', 'logistics.stockid = vehicles.stockid')
->join('car_tracking', 'car_tracking.stockid = logistics.stockid')
->get('vehicles')
->result();
这是我遇到的错误
Unknown column 'car_tracking.stickers' in 'where clause'
`SELECT `vehVin`, `vehMake`, `vehModel`, `seller`, `dealership`, `buyer`, `logistics`.`warehouseName`, `transportDate`, `car_tracking`.`keys`, `car_tracking`.`window`
FROM (`vehicles`)
JOIN `logistics` ON `logistics`.`stockid` = `vehicles`.`stockid`
JOIN `car_tracking` ON `car_tracking`.`stockid` = `logistics`.`stockid`
WHERE `transportDate` < '2013-11-25'
AND (car_tracking.keys = '0' OR car_tracking.stickers = '0')`
提前感谢您的帮助!
最佳答案
确保 car_tracking.stickers 存在。 我还会考虑将 sql 查询原始化。因为 codeigniter 的查询生成器有很多问题。当它们一起使用时,它无法处理大多数查询条件。
关于php - 包含 WHERE、AND、OR 子句的 SQL 语句出现问题 codeigniter,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20229763/