두 개의 복잡한 mysql select 문을 결합하는 올바른 방법은 무엇입니까?
P粉600402085
P粉600402085 2023-09-06 14:09:54
0
1
506

내 테이블에서 두 개의 목록을 꺼낼 수 있습니다. 각 코호트의 각 학생에 대한 모든 단위가 표시됩니다. 다른 하나는 특정 그룹의 특정 학생을 위한 작업을 위해 각 단원의 모든 섹션이 제출되었는지 여부를 보여줍니다. 각 코호트의 각 학생에 대한 각 단원의 각 섹션에 대한 제출물(또는 비제출물)을 볼 수 있도록 목록에 가입하고 싶습니다.

으아악

사용자 ID와 그룹 ID가 있는 조직 목록을 가져옵니다.

으아악

과제에 제출된 것보다 더 많은 부분이 있는 경우 이 작업은 코호트 ID, 사용자 ID 및 단위 이름을 고려하여 각 코호트의 각 학생이 완료해야 하는 각 단위에 대해 하나의 행을 반환합니다.

으아악

두 번째 Select 문을 첫 번째 Select 문의 일부로 만들기 위해 첫 번째 Select 문의 세 열을 연결 정보로 사용하는 방법은 무엇입니까?

첫 번째 쿼리의 모든 결과에 대해 두 번째 쿼리를 실행하고 싶습니다. 위의 데이터를 사용하여 두 부분으로 구성된 단위의 일부만 제출했기 때문에 사용자 ID 21을 추출하고 싶습니다.

으아악

이게 조인인가요? 아니면 하위 쿼리?

P粉600402085
P粉600402085

모든 응답(1)
P粉477369269

(그만한 가치가 있기 때문에 group은 다양한 사회 과학 분야에서 허용되는 용어라고 생각합니다.)

열이 코드>테이블이면 문제가 더 쉬워집니다. 이제 하위 쿼리로 시작하여 해당 열이 포함된 더미 테이블을 생성해 보겠습니다. assignments 表有一个与您的 cohort_unitspart 表相匹配的 part 으아악

대신 이 하위 쿼리를 사용하겠습니다

. 이것은 약간 지저분하지만 향후 작업이 더 명확해질 것입니다. 赋值

다음으로 각 유닛의 부품 수가 필요합니다. 다음은 간단한 집계입니다.

으아악

공통 테이블 표현식을 사용하여 아래와 같이 쿼리를 구성할 수 있습니다.

으아악

이것은 바이올린입니다.

https://dbfiddle.uk/FvGkiAnl

이를 달성하는 비결 중 하나는 개별적으로 집계하여 부품 수를 얻는 것입니다.

최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿