1
Cakephp의 manual 제안처럼 여러 값과 AND 조건을 다른 열과 일치시키기 위해 "OR"조건을 넣고 싶은 열이 있습니다.find 함수와 함께 "OR"와 "AND"배열을 가진 Cakephp 문제
SQL :
SELECT * FROM site_logs
WHERE action LIKE "Facebook%" OR action LIKE "Twitter%" AND
created >= "2013-06-29"
GROUP BY "ip address"
CakePHP의 : SQL 생성
$conditions = array(
'OR' => array(
'SiteLogs.action like' => 'Facebook%'
'SiteLogs.action like' => 'Twitter%'
),
'SiteLogs.created >=' => '2013-06-29'
);
$this->SiteLogs->find('all',
'conditions' => $conditions,
'group' => 'ip address'
)
는 "트위터"데이터 배열이 서로 덮어 쓰게됩니다 같은 키를 가진 모든 요소를 가지고 있기 때문에 "OR"에 대한 기록이 .
GENERATED SQL;
SELECT `site_logs`.* FROM `site_logs`
WHERE `site_logs`.`action` LIKE "Twitter%" AND
site_logs`.`created` >= "2013-06-29"
GROUP BY `site_logs`.`ip address`
"OR"배열의 모든 값을 가져 오려면 어떻게해야합니까? 내가 놓친 게 있니?
정확하게 대답은 아니지만 원하는 SQL은 약간 모호합니다. AND & OR 조건이 여러 개인 경우이를 그룹으로 묶어서 MySQL이 실행할 방법을 명확하게 지정해야합니다. 귀하의 경우에, 나는 당신이'(행동과 비슷하거나 행동이 b와 같고)> dt를 창조하고 싶다고 생각한다. 이것은 행동과 비슷하다. (행동과 비슷하고, 창조 된> dt) ' –
@ StevenMoseley : 나는 cakephp의 매뉴얼에 혼란스러워했다. 도움 주셔서 감사합니다. – Nehal