세 개의 테이블이 있습니다. 첫 번째 테이블은 Activities이고 두 번째 테이블은 Members이고 last는 Members입니다. 활동에 Members_ID라는 외래 키가 있고 기본 키가 Activity_ID입니다. 회원의 기본 키는 Members_ID입니다. 메시지에 Activity_ID 및 Members_ID가 기록되었습니다. 활동에 대해 검색하고 싶습니다. NATURAL JOIN 회원 및 에 대한 새 열 개수가 필요합니다. 메시지의 message_ID (Activity_ID가 동일한 경우).중첩 쿼리 및 NATURAL JOIN에 대한 SQL 쿼리
자연은 가입 :
SELECT*
FROM Activities
NATURAL JOIN Members
WHERE Activities.Members_ID = Members.Members_ID;
COUNT (여기서 message) :
SELECT COUNT(message_ID)
FROM Message
WHERE Activity_ID = 123;
질문은 다음과 같습니다 어떻게 함께 위의 두 가지를 검색 할? 동일한 활동을 가진 활동 NATURAL JOIN 멤버가있는 테이블을 갖고 싶습니다 .Members_ID 및 Message 테이블의 COUNT (message_ID) 인 가상 컬럼.
문제는 무엇입니까? –
무엇이 문제입니까? – keni
자연스러운 조인을 피하는 것이 좋습니다. 명시 적으로 조인 술어를 언급하는 것이 더 나은 관행 인 IMO입니다. –