5.0.0 - 严重 - 已处理
第一种写法:$subQuery = DB::name('user_field_dict')
->field('field_id')
->where('field_id|parent_field', $fieldID)
->buildSql();
$where = ['is_show' => 1,
'user_status' => ['neq', 0],
'user_list.type_id' => $typeID,
'field_id' => ['in', $subQuery]];
$userList= Db::view('user_list', 'user_name,real_name')
->view('unit_list', 'unit_name', 'user_list.unit_id=unit_list.unit_id', 'LEFT')
->view('user_title_dict', 'title_name', 'user_list.title_id=user_title_dict.title_id', 'LEFT')
->where($where)
->order('convert(real_name using gbk) asc')
->select(); //两种写法的不同处
dump($userList);输出的结果为null而不直接select,改成buildSql(见第二种写法),再query时就可以查出结果,如下:
第二种写法:
$subQuery = DB::name('user_field_dict')
->field('field_id')
->where('field_id|parent_field', $fieldID)
->buildSql();
$where = ['is_show' => 1,
'user_status' => ['neq', 0],
'user_list.type_id' => $typeID,
'field_id' => ['in', $subQuery]];
$query = Db::view('user_list', 'user_name,real_name')
->view('unit_list', 'unit_name', 'user_list.unit_id=unit_list.unit_id', 'LEFT')
->view('user_title_dict', 'title_name', 'user_list.title_id=user_title_dict.title_id', 'LEFT')
->where($where)
->order('convert(real_name using gbk) asc')
->buildSql(); //两种写法的不同处
$userList = Db::query($query);
dump($userList);看了调试生成的sql语句两次生成的语句都一样没有错误,在数据库执行也能正常查出结果,但第一种写法就是输出不了结果thinkphp版本ThinkPHP5.0.2完整版
请问是版本bug还是我的写法有问题
