今天碰到了这样的问题
```public function getCarByWhere($where, $offset, $limit)
{
return $this->table('snake_car c')->join('snake_member m','c.boss = m.id','LEFT')->field('c.*,m.nick_name')->where($where)->where('c.is_delete',0)->limit($offset, $limit)->order('id desc')->select();
}
这样写没问题
但是把$where['c.is_delete'] =0;写在$where中就报错找不到c.is_delete字段
为什么会这样那
好像得用alias吧
先确定是否由此字段,如有则输出sql语句在数据库管理工具运行一下就知道问题了
先写sql语句在数据库管理控制台运行看是否正常。
看你的语句应该是tp5或则tp5.1中写法。很明显$where['c.is_delete'] =0 这种写法已经是错了。你的“$where”是一个变量传进来的,你在这个变量中找c.is_delete,肯定找不到。而你where('c.is_delete',0)这样写,是在数据表中找。c表中是存在这个字段所以程序才会运行。这点问题,认真点自己就能解决。