다음 쿼리를 예상대로 작동 시키려면 어떻게합니까? MySQL은 여러 순서로 질의를 업데이트합니까?
다음 user_id = $id AND country = $country AND d = $d
SET user_code = $code
위가 false 인 경우에 사용자가있는 경우, 다음
가서 을 : MySQL은 아이디어는 다음과 같다 여러ORDER BY
UPDATE user_list
SET user_code = $code
WHERE user_id = $id
AND country = $country AND
((d = $d) OR
(c = $c ORDER BY c ASC LIMIT 1) OR
(b = $b ORDER BY b ASC LIMIT 1))
나에게 오류를 제공합니다 첫 번째 사용자가으로 주문한 경우 user_id = $id AND country = $country AND c = $c
과 SET user_code = $code
위의 내용이 거짓이면 th 엉 가서 user_id = $id AND country = $country AND b = $b
와 B에 의해 주문 1 사용자를 가지고 다음 당신은 C 또는 b의 최대 값이 어떤 값과 동일한 행을 업데이트 할 것 SET user_code = $code
'ORDER BY'는 'OR' 절이 아닌 쿼리의 끝 부분에 있어야합니다. * 내 코멘트를 삭제했습니다 : 거대한 오류가 있습니다. * –
@ caCtus : 이것에 대해 알고 있습니다 만 어떻게 2 차 주문으로 작동시킬 수 있습니까? – SpeedCoder
달성하고자하는 목표에 대해 명확하게 설명해 주시겠습니까? – Mureinik