12_6강 질문
136
3 câu hỏi đã được viết
4번 문제를 혼자 먼저 풀어볼 때,
SELECT COUNT(DISTINCT l.id)
FROM openairbnb.listings AS l
WHERE l.availability_365 = 0;
이렇게 풀어서 같은 답이 나왔는데 해답에서는 서브쿼리를 이용하는 이유가 뭔지, 차이점이 있는지 궁금합니다.
Câu trả lời 2
0
안녕하세요 질문 해주셔서 감사합니다.결론적으로 말하면 수강자분께서 쓰신 쿼리가 훨씬 더 효율적입니다. 제가 강의를 작성 중에 서브 쿼리를 사용하는 방식으로도 해답을 만들다 보니 그렇게 된것 같습니다. 아래 참고하시면 되겠습니다. 감사합니다!
원래의 해답(서브쿼리 사용)은 불필요한 서브쿼리와 ORDER BY 연산이 포함되어 있어 비효율적.
서브쿼리를 사용하지 않고 직접
WHERE조건을 적용하는 것이 더 깔끔하고 성능이 좋음.서브쿼리는 특정한 경우(추가 필터링, 데이터 전처리, 복잡한 계산 등)에만 필요.
💡 최적화된 쿼리(WHERE 조건을 직접 적용한 쿼리)가 더 효율적인 해결 방법입니다! 🚀
0
안녕하세요, 인프런 AI 인턴입니다. yseohyun11님.
SQL 쿼리를 작성하실 때, 종종 서브쿼리를 사용하는 것과 사용하지 않는 것의 차이점을 궁금해 할 수 있습니다. 서브쿼리는 어떤 작용을 하는지 또는 어떤 상황에서 사용해야 하는지가 중요할 수 있는데요, 아래에 그 차이를 간단히 설명드리겠습니다.
서브쿼리 사용 이유: 서브쿼리는 복잡한 데이터를 분리하여 단계별로 처리하거나 다른 조건으로 데이터를 필터링하고 싶을 때 유용합니다. 주로 연산의 흐름을 분명히 하거나 잘못된 데이터 처리의 위험을 줄이는 데 도움을 줄 수 있습니다.
차이점: 서브쿼리를 사용하지 않은 쿼리는 연산과 조건이 간단한 경우 빠르게 작성할 수 있지만, 복잡한 데이터를 다룰 때는 가독성이 떨어질 수 있습니다. 반면 서브쿼리를 사용하면 복잡한 로직을 여러 구조로 나눌 수 있어 명확하고 유지보수가 용이하지만, 성능 저하 위험이 있을 수도 있습니다.
기본적으로 서브쿼리와 직접 쿼리의 선택은 성능과 유지보수의 균형을 맞추는데 있습니다. 복잡한 조작이 필요하지 않다면 단순한 쿼리로 해결할 수 있고, 여러 테이블 간의 연계나 조건들이 복잡해진다면 서브쿼리를 활용하는 것도 좋은 방법입니다.
아래의 관련 질문 링크를 통해 더욱 상세한 논의를 참고해 보실 수 있습니다:
- 서브쿼리 사용에 대한 논의: 서브쿼리와 메인쿼리 사용시 고려사항에 대한 설명이 있습니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
공통 코드 VS Enum 클래스
0
8
1
movablePageCount와 pageSize 상수
0
12
1
JPA와 네이티브 쿼리
0
14
1
aws 계정 생성 질문
1
24
1
안녕하세요.
0
29
1
Properties 설정이 추가되었는데
0
27
1
강의 DB데이터 질문
0
38
1
극단적으로 from-to가 12일 이고, valid_to가 13일이면?
0
36
1
11강 [실습] Docker로 MySQL1 분만에 실행하기
0
61
2
11강 [실습] Docker로 MySQL1 분만에 실행하기
0
51
2
선생님 샤딩에 대한 강의도 좀 해주세요
0
43
1
몽고DB CAP 이론 관련
0
51
2
아니 이거 갑자기 데이터베이스가 사라졌어요
0
52
1
기타 영역 중 언두로그
0
63
1
ReviewPolicyValidator와 ReviewManger내의 if문
1
52
2
코드 깃허브는 없을까요?
1
51
2
최종 과제 제출합니다.
0
71
2
실전튜닝 4 질문 - group by 순서와 index 순서
0
57
1
@Modifying에 관하여
1
55
1
3-13 과제
0
74
3
가중이동평균매출 lag함수 활용
0
68
2
12-2 listing 로드 문제
0
116
2
2-2. 실습 2A 6, 7번 문제
0
120
1
12_5 질문3
0
149
3

