코스에 등록 할 수있는 사람 수에 제한이있는 데이터베이스를 설정하고 있습니다. 내 코스 테이블에는 int를 보유하는 최대 열이 있고 등록 된 테이블에는 등록 된 모든 사람들이 해당 코스를 보유합니다. 내 웹 페이지는 코스 테이블에 등록 된 테이블의 등록 된 사람 수인 <의 최대 수를 표시해야합니다. 내 현재 쿼리를 heres.두 테이블의 행 수를 제한하고 표시된 정보를 제한하려는 SQL count()
SELECT course.time,COUNT(registered.time),registered.maximum FROM course
JOIN (registered)
ON course.type = 'computing' OR
(registered.type = 'computing' AND course.time = registered.time)
GROUP BY course.time
HAVING COUNT(registered.time) < course.maximum
이의 문제는 관계없이 수업 시간에 등록 된 모든 사람을 계산, 그래서 다른 시간에 등록 이명이있는 경우 여전히마다 등록 이명을 계산합니다.
희망 설명해 주셨습니다. 누군가 도와 드릴 수 있기를 바랍니다. 감사합니다.
미안 내 실수는, course.maximum을 읽어야합니다. 방금 쿼리를 작성했지만 아무도 등록하지 않으면 사용 가능한 슬롯이 표시되지 않습니다. 테이블 레이아웃은 코스입니다 : 필드는 시간/유형/최대 및 등록 : 필드는 유형/시간입니다 – James
그래도 다른 문제가 있습니다. 아무도 가입하지 않은 코스를 얻으려면 외부 참여가 필요합니다. 나는 그것을 내 대답에 추가 할 것이다. – MJB