저는 수년 동안 간단한 MySQL 명령을 사용해 왔으며 더 복잡한 명령을 사용하고자했습니다. 이전 코드를 다시 작성하는 작업을 수행했지만 여기서 무슨 일이 일어나는지 알 수 없습니다.WHERE가 지정 될 때까지 MySQL 결과가 없습니다.
두 개의 테이블을 하나의 reults에 병합하려고합니다. 두 번째 테이블은 "개수"만을 제공합니다. 내가 원하는 무엇
TABLE customers:
customerID, name, boxID
TABLE codes:
boxID, code, retrieved
정확히 내가 고객으로부터 SELECT *에서 무엇을 얻을 것입니다,하지만 난 boxID이 동일한 경우 코드 테이블의 모든 코드에 대한 수를()가 여분의 열을합니다.
이것은 현재 검색어입니다.
SELECT customers.*, count(codes.code) as codesused
FROM customers
INNER JOIN codes
ON customers.boxID = codes.boxID
WHERE codes.retrieved = 1
"where customers.customerID = 'x'"를 추가 할 때까지 NULL이됩니다. 왜 위의 코드에서 원하는 것을 얻을 수 없는지 설명 할 수 있습니까?
데 사용해야합니다 그래서 당신은 당신이 우리를 위해 여기에 링크 할 수 있습니다 http://sqlfiddle.com/에서 샘플 시나리오를 만들 수 있습니다에 의해 그룹과 where 절을 사용할 수 없습니다 . – biziclop