내가 다음과 같습니다 kohana 프레임 워크에서 쿼리 건물입니다 :Kohana 쿼리 빌더
DB::select('users.email')->from('users', 'roles_users')->
where('users.id', '=', 'roles_users.user_id')->
and_where('roles_users.role_id', '=', '2');
는 것 출력 :
SELECT `users`.`email` FROM `users`, `roles_users`
WHERE `users`.`id` = 'roles_users.user_id'
AND `roles_users`.`role_id` = '2'
그래서 내 문제가 있음을 kohana이 roles_users.user_id
에 나를 위해 ' '
을두고 그래서 MySQL의를 필드의 실제 값이 아닌 텍스트를 검색합니다. 그것을 해결할 방법이 있습니까?
분명히 첫 번째 스 니펫이 해결책입니다. 하지만 두 번째 스 니펫을 사용하는 것이 가능한지 궁금합니다. 어떤 조인도 없으므로 DB가'where ('users.id', '=', DB :: expr ('roles_users.user_id'))'를 어떻게 이해할 것인가? – Kowser
DB :: expr ('blablabla')는 'blablabla'가 쿼리 작성기에 의해 이스케이프되지 않음을 의미합니다. – egis
완벽하게 작동 해 주셔서 감사합니다. – Linas