반응형
mysql에서 where and inner join을 사용합니다.
저는 테이블이 세 개 있습니다.
위치들
ID | NAME | TYPE |
1 | add1 | stat |
2 | add2 | coun |
3 | add3 | coun |
4 | add4 | coun |
5 | add5 | stat |
학교들
ID | NAME
1 | sch1
2 | sch2
3 |sch3
학교_
ID |LOCATIONS_ID |SCHOOL_ID
1 | 1 |1
2 | 2 |2
3 | 3 |3
여기서 테이블 위치는 응용프로그램의 모든 위치를 포함합니다.학교 장소는 ID로 호출됩니다.
쿼리를 사용할 때
select locations.name from locations where type="coun";
"coun" 유형의 이름을 표시합니다.
하지만 school_locations만 type="coun"인 locations.name 을 표시하고 싶습니다.
문의사항을 따라가 보았지만 아무 것도 작동하지 않는 것 같습니다.
select locations.name
from locations
where type="coun"
inner join school_locations
on locations.id=school_locations.location_id
inner join schools
on school_locations.school.id=schools.id;
그리고.
select locations.name
from locations
inner join school_locations
on locations.id=school_locations.location_id
inner join schools
on school_locations.school.id=schools.id where type="coun";
쿼리에서 여러 내부 조인을 사용할 수 있습니까, 아니면 다른 방법이 있습니까?
SELECT `locations`.`name`
FROM `locations`
INNER JOIN `school_locations`
ON `locations`.`id` = `school_locations`.`location_id`
INNER JOIN `schools`
ON `school_locations`.`school_id` = `schools_id`
WHERE `type` = 'coun';
그WHERE
조항은 문장의 끝에 있어야 합니다.
시도해 보기:
SELECT Locations.Name, Schools.Name
FROM Locations
INNER JOIN School_Locations ON School_Locations.Locations_Id = Locations.Id
INNER JOIN Schools ON School.Id = Schools_Locations.School_Id
WHERE Locations.Type = "coun"
위치를 학교_위치에 연결한 다음 학교_위치를 학교에 연결할 수 있습니다.이렇게 하면 관련된 모든 위치 및 학교 집합이 형성되며, 위치가 "카운" 유형인 사용자에게 WHERE 절을 사용하여 자세히 설명할 수 있습니다.
시도해 보기:
SELECT
(
SELECT
`NAME`
FROM
locations
WHERE
ID = school_locations.LOCATION_ID
) as `NAME`
FROM
school_locations
WHERE
(
SELECT
`TYPE`
FROM
locations
WHERE
ID = school_locations.LOCATION_ID
) = 'coun';
원하는 만큼 조인을 사용할 수 있지만, 더 많이 사용할수록 성능에 영향을 미칩니다.
언급URL : https://stackoverflow.com/questions/1392479/using-where-and-inner-join-in-mysql
반응형
'programing' 카테고리의 다른 글
양식을 재설정하는 가장 깨끗한 방법 (0) | 2023.10.09 |
---|---|
오라클 병합 쿼리에서 기본 키를 반환하는 방법 (0) | 2023.10.09 |
Oracle SQL Developer에 시간 및 분 단위로 날짜를 입력하고 표시하는 방법은 무엇입니까? (0) | 2023.10.09 |
Oracle SQL에서 전체 테이블이 아닌 테이블의 파티션을 쿼리하여 더 빠르게 실행할 수 있습니까? (0) | 2023.10.09 |
Python Pandas - 여러 테이블이 포함된 csv 파일 읽기 (0) | 2023.10.09 |