Top 9 서브 쿼리 조인 차이 The 199 New Answer

You are looking for information, articles, knowledge about the topic nail salons open on sunday near me 서브 쿼리 조인 차이 on Google, you do not find the information you need! Here are the best content compiled and compiled by the Chewathai27.com/to team, along with other related topics such as: 서브 쿼리 조인 차이 서브쿼리 조인 속도 차이, 조인 안에 서브 쿼리, 서브쿼리 사용 이유, 서브쿼리 조인하기, 조인을 서브쿼리로, mssql 서브쿼리 조인 속도 차이, mysql 서브쿼리 조인, 오라클 서브쿼리 조인

서브 쿼리는 복잡한 SQL 쿼리문에 많이 사용된다. 보통은 메인 쿼리라고 부르는 외부 쿼리가 있고, 외부 쿼리 내에 다른 쿼리문, 즉 내부 쿼리가 있는 구조다. 반면에, 조인은 여러 개의 쿼리를 필요로 하지 않는다.


서브 쿼리와 조인(Join), 세미 조인
서브 쿼리와 조인(Join), 세미 조인


[MYSQL] 📚 JOIN과 서브쿼리 차이 및 변환 💯 정리

  • Article author: inpa.tistory.com
  • Reviews from users: 2534 ⭐ Ratings
  • Top rated: 3.0 ⭐
  • Lowest rated: 1 ⭐
  • Summary of article content: Articles about [MYSQL] 📚 JOIN과 서브쿼리 차이 및 변환 💯 정리 Updating …
  • Most searched keywords: Whether you are looking for [MYSQL] 📚 JOIN과 서브쿼리 차이 및 변환 💯 정리 Updating 조인(JOIN) vs 서브쿼리(Sub Query) 조인과 서브쿼리는 때로 동일한 결과를 얻을 수 있다. 상황에 따라 조인을 사용하는 것이 훨씬 좋을 때도 있고, 반면에 서브 쿼리를 사용하는 것이 좋을 때도 있다. 서브 쿼리..
  • Table of Contents:

조인(JOIN) vs 서브쿼리(Sub Query)

방문해 주셔서 감사드립니다

공지사항

최근 댓글 new

최근 글 new

인기 글 hot

티스토리툴바

[MYSQL] 📚 JOIN과 서브쿼리 차이 및 변환 💯 정리
[MYSQL] 📚 JOIN과 서브쿼리 차이 및 변환 💯 정리

Read More

SUBQUERY 와 JOIN 의 차이

  • Article author: velog.io
  • Reviews from users: 24007 ⭐ Ratings
  • Top rated: 3.5 ⭐
  • Lowest rated: 1 ⭐
  • Summary of article content: Articles about SUBQUERY 와 JOIN 의 차이 서브 쿼리는 복잡한 SQL 쿼리문에 많이 사용됩니다. 반면에, 조인은 여러 개의 쿼리를 필요로 하지 않습니다. 조인은 쿼리문이 복잡해지더라도 서브 쿼리 … …
  • Most searched keywords: Whether you are looking for SUBQUERY 와 JOIN 의 차이 서브 쿼리는 복잡한 SQL 쿼리문에 많이 사용됩니다. 반면에, 조인은 여러 개의 쿼리를 필요로 하지 않습니다. 조인은 쿼리문이 복잡해지더라도 서브 쿼리 … 묵시적 조인SELECT 속성명FROM 테이블1, 테이블2WHERE 테이블1.속성1 = 테이블2.속성1명시적 조인SELECT 속성명FROM 테이블1 JOIN 테이블2ON 테이블1.속성1 = 테이블2.속성1서브 쿼리는 복잡한 SQL 쿼리문에 많이 사용됩니다.반면에, 조인은
  • Table of Contents:

SQL

📌 JOIN 의 종류

📌 SUBQUERY 와 JOIN 의 차이

SUBQUERY 와 JOIN 의 차이
SUBQUERY 와 JOIN 의 차이

Read More

JOIN과 Sub-Query의 차이

  • Article author: indifferent-elk.tistory.com
  • Reviews from users: 9478 ⭐ Ratings
  • Top rated: 4.6 ⭐
  • Lowest rated: 1 ⭐
  • Summary of article content: Articles about JOIN과 Sub-Query의 차이 첫째, 스칼라 서브쿼리[5]다. 아래 예를 보자. // 방법1. 서브쿼리 SELECT name , cost FROM product WHERE … …
  • Most searched keywords: Whether you are looking for JOIN과 Sub-Query의 차이 첫째, 스칼라 서브쿼리[5]다. 아래 예를 보자. // 방법1. 서브쿼리 SELECT name , cost FROM product WHERE … 최근 프로그래머스의 없어진 SQL 문제(없어진 기록 찾기)를 풀었는데 두 가지 풀이법[1]이 있음을 알았습니다. 평소 떠오르는대로 SQL을 짜는 편인데 이 기회를 통해 두 방법의 차이에 대해 공부, 기록하면 좋겠다..
  • Table of Contents:

태그

관련글

댓글0

공지사항

최근글

인기글

최근댓글

태그

전체 방문자

JOIN과 Sub-Query의 차이
JOIN과 Sub-Query의 차이

Read More

11.20(서브쿼리와 조인의 차이점) :: 인생은 양탄자의 무늬짜기

  • Article author: carpet-part1.tistory.com
  • Reviews from users: 19017 ⭐ Ratings
  • Top rated: 4.4 ⭐
  • Lowest rated: 1 ⭐
  • Summary of article content: Articles about 11.20(서브쿼리와 조인의 차이점) :: 인생은 양탄자의 무늬짜기 서브쿼리란? 하나의 SQL 문에 포함되어 있는 또 다른 SQL 문 서브쿼리 사용시 주의사항 1. 서브쿼리를 괄호로 감싸서 사용 2. 서브쿼리는 단일 행 … …
  • Most searched keywords: Whether you are looking for 11.20(서브쿼리와 조인의 차이점) :: 인생은 양탄자의 무늬짜기 서브쿼리란? 하나의 SQL 문에 포함되어 있는 또 다른 SQL 문 서브쿼리 사용시 주의사항 1. 서브쿼리를 괄호로 감싸서 사용 2. 서브쿼리는 단일 행 … 서브쿼리란? 하나의 SQL 문에 포함되어 있는 또 다른 SQL 문 서브쿼리 사용시 주의사항 1. 서브쿼리를 괄호로 감싸서 사용 2. 서브쿼리는 단일 행 또는 복수 행 비교 연산자와 함께 사용 가능 3. 서브쿼리에서는 O..
  • Table of Contents:

TAG

관련글 관련글 더보기

인기포스트

티스토리툴바

11.20(서브쿼리와 조인의 차이점) :: 인생은 양탄자의 무늬짜기
11.20(서브쿼리와 조인의 차이점) :: 인생은 양탄자의 무늬짜기

Read More

MySQL where in (서브쿼리) vs 조인 조회 성능 비교 (5.5 vs 5.6)

  • Article author: jojoldu.tistory.com
  • Reviews from users: 36456 ⭐ Ratings
  • Top rated: 3.6 ⭐
  • Lowest rated: 1 ⭐
  • Summary of article content: Articles about MySQL where in (서브쿼리) vs 조인 조회 성능 비교 (5.5 vs 5.6) MySQL 5.5에서 5.6으로 업데이트가 되면서 서브쿼리(Subquery) 성능 개선이 … 서브쿼리를 통한 조회 (Select)와 Join에서의 조회간의 성능 차이를 … …
  • Most searched keywords: Whether you are looking for MySQL where in (서브쿼리) vs 조인 조회 성능 비교 (5.5 vs 5.6) MySQL 5.5에서 5.6으로 업데이트가 되면서 서브쿼리(Subquery) 성능 개선이 … 서브쿼리를 통한 조회 (Select)와 Join에서의 조회간의 성능 차이를 … MySQL 5.5에서 5.6으로 업데이트가 되면서 서브쿼리(Subquery) 성능 개선이 많이 이루어졌습니다. 이번 시간에는 MySQL 2개의 버전 (5.5, 5.6) 에서 서브쿼리를 통한 조회 (Select)와 Join에서의 조회간의 성능 차..
  • Table of Contents:

0 테스트 환경

1 MySQL 55

2 MySQL 56

결론

태그

관련글

댓글0

전체 방문자

최근글

인기글

티스토리툴바

MySQL where in (서브쿼리) vs 조인 조회 성능 비교 (5.5 vs  5.6)
MySQL where in (서브쿼리) vs 조인 조회 성능 비교 (5.5 vs 5.6)

Read More

[SQL] 조인에 대해 알아보자 2편 (조인의 조건)

  • Article author: wyatt37.tistory.com
  • Reviews from users: 24124 ⭐ Ratings
  • Top rated: 3.4 ⭐
  • Lowest rated: 1 ⭐
  • Summary of article content: Articles about [SQL] 조인에 대해 알아보자 2편 (조인의 조건) 서브쿼리와의 차이점. 조인은 서브쿼리와 매우 유사합니다. 그러나 효과만 비슷할 뿐 수준이 다른 기술입니다. tCar와 tMaker 테이블을 통해서 티볼리 … …
  • Most searched keywords: Whether you are looking for [SQL] 조인에 대해 알아보자 2편 (조인의 조건) 서브쿼리와의 차이점. 조인은 서브쿼리와 매우 유사합니다. 그러나 효과만 비슷할 뿐 수준이 다른 기술입니다. tCar와 tMaker 테이블을 통해서 티볼리 … 안녕하세요, 끙정입니다. 오늘은 조인의 여러 조건에 대해서 알아보도록 하겠습니다. 1. 서브쿼리와의 차이점 조인은 서브쿼리와 매우 유사합니다. 그러나 효과만 비슷할 뿐 수준이 다른 기술입니다. tCar와 tMake..AI/ML/DX까지 기술의 넓은 영역을 연구합니다 🙂
  • Table of Contents:
[SQL] 조인에 대해 알아보자 2편 (조인의 조건)
[SQL] 조인에 대해 알아보자 2편 (조인의 조건)

Read More

서브쿼리 기초 WHERE, JOIN 조건으로 실습해보기

  • Article author: for-my-wealthy-life.tistory.com
  • Reviews from users: 2585 ⭐ Ratings
  • Top rated: 4.3 ⭐
  • Lowest rated: 1 ⭐
  • Summary of article content: Articles about 서브쿼리 기초 WHERE, JOIN 조건으로 실습해보기 서브쿼리는 코딩할 때 정말 많이 쓰인다. 특히 DB2에서는 한 통으로 쿼리문을 짜는 경우가 대부분이기 때문에 거의 모든 쿼리가 서브쿼리 형태로 되어 … …
  • Most searched keywords: Whether you are looking for 서브쿼리 기초 WHERE, JOIN 조건으로 실습해보기 서브쿼리는 코딩할 때 정말 많이 쓰인다. 특히 DB2에서는 한 통으로 쿼리문을 짜는 경우가 대부분이기 때문에 거의 모든 쿼리가 서브쿼리 형태로 되어 … 서브쿼리는 코딩할 때 정말 많이 쓰인다. 특히 DB2에서는 한 통으로 쿼리문을 짜는 경우가 대부분이기 때문에 거의 모든 쿼리가 서브쿼리 형태로 되어 있다. 서브쿼리란? -SELECT 쿼리문 안에 또 SELECT 쿼리문이..
  • Table of Contents:

태그

‘SQL’ Related Articles

서브쿼리 기초 WHERE, JOIN 조건으로 실습해보기
서브쿼리 기초 WHERE, JOIN 조건으로 실습해보기

Read More

OKKY – 서브쿼리랑 조인의 차이

  • Article author: okky.kr
  • Reviews from users: 44444 ⭐ Ratings
  • Top rated: 4.0 ⭐
  • Lowest rated: 1 ⭐
  • Summary of article content: Articles about OKKY – 서브쿼리랑 조인의 차이 서브쿼리랑 조인의 차이. 안녕하세요. 이번에 db공부를 하면서 조인과 서브쿼리에 대해서 계속 찾아봤는데. 뭔가 명쾌하게 제 속을 긁어주는 글을 … …
  • Most searched keywords: Whether you are looking for OKKY – 서브쿼리랑 조인의 차이 서브쿼리랑 조인의 차이. 안녕하세요. 이번에 db공부를 하면서 조인과 서브쿼리에 대해서 계속 찾아봤는데. 뭔가 명쾌하게 제 속을 긁어주는 글을 …
  • Table of Contents:
OKKY - 서브쿼리랑 조인의 차이
OKKY – 서브쿼리랑 조인의 차이

Read More


See more articles in the same category here: Top 673 tips update new.

[MYSQL] 📚 JOIN과 서브쿼리 차이 및 변환 💯 정리

조인(JOIN) vs 서브쿼리(Sub Query)

조인과 서브쿼리는 때로 동일한 결과를 얻을 수 있다.

상황에 따라 조인을 사용하는 것이 훨씬 좋을 때도 있고, 반면에 서브 쿼리를 사용하는 것이 좋을 때도 있다.

서브 쿼리는 복잡한 SQL 쿼리문 에 많이 사용된다.

보통은 메인 쿼리라고 부르는 외부 쿼리가 있고, 외부 쿼리 내에 다른 쿼리문, 즉 내부 쿼리가 있는 구조다.

반면에, 조인은 여러 개의 쿼리를 필요로 하지 않는다.

조인의 역할은 2개 혹은 그 이상의 테이블을 연결하고, 연결한 테이블로부터 필요한 열을 조회할 수 있도록 한다.

서브 쿼리와 조인 모두 여러 개의 테이블로부터 데이터를 추출하기 위한 복잡한 쿼리문에 사용될 수는 있으나, 이 둘의 데이터를 추출하기 위한 접근 방식은 다르다.

분석에 따라 서브 쿼리와 조인 중 어느 것을 사용하든 상관이 없을 때도 있고, 둘 중 하나만이 유일한 해결 방법일 수도 있다.

서브쿼리는 가독성이 좋지만 성능이 조인에 비해 매우 좋지않다.

따라서 최신 MySQL은 사용자가 서브쿼리문을 사용하면 자체적으로 조인문으로 변환하여 실행시키도록 업데이트 되었다.

비록 내부적으로 변환해준다 하지만 꼭 필요한 경우를 제외하고는 너무 서브쿼리를 남용하지 않는 것을 권하는 편이다.

강의에 앞서, 아래의 2개 테이블을 예시로 사용할 예정이다.

[ 상품 목록 테이블 – product ]

id name cost year city 1 chair 245.00 2017 Chicago 2 armchair 500.00 2018 Chicago 3 desk 900.00 2019 Los Angeles 4 lamp 85.00 2017 Cleveland 5 bench 2000.00 2018 Seattle 6 stool 2500.00 2020 Austin 7 tv table 2000.00 2020 Austin

[ 판매 이력 테이블 – sale ]

id product_id (외래키) price year city 1 2 2000.00 2020 Chicago 2 2 590.00 2020 New York 3 2 790.00 2020 Cleveland 5 3 800.00 2019 Cleveland 6 4 100.00 2020 Detroit 7 5 2300.00 2019 Seattle 8 7 2000.00 2020 New York

서브 쿼리를 조인으로 대체할 수 있는 경우

1) 중첩 서브 쿼리 (단일 행)

중첩 서브 쿼리란, where 절에 서브쿼리를 사용하는 것을 의미한다.

만일 내부 쿼리가 단일한 값을 반환한다면 이는 조인으로도 충분히 구현할 수 있게 된다.

Q. 2,000 달러에 팔린 product의 이름과 가격을 알고 싶다고 가정해보자.

서브 쿼리를 이용해 아래와 같이 작성할 수 있다.

— sale에서 2000원에 팔린 product_id와 projuct테이블의 id와 일치한 것을 가져온다. SELECT name, cost FROM product WHERE id = ( SELECT product_id FROM sale WHERE price = 2000 AND product_id = product.id );

name cost armchair 500.00 tv table 2000.00

여기서 주의할 점은 아이디를 비교하는 과정에서 각 id 와 product_id 필드를 비교할 때마다 내부 쿼리가 실행된다는 점이다.

쿼리를 계속해서 반복해서 날리니, 성능이 낮아질수 밖에 없다.

이는 조인을 사용하여 똑같은 결과를 얻어낼 수 있다.

[ INNER JOIN으로 변환 ]

SELECT p.name, p.cost FROM product AS p JOIN sale AS s — inner join ON p.id = s.product_id WHERE s.price = 2000;

2) 중첩 서브 쿼리 (복수행)

IN 연산자 안에 서브 쿼리가 있다는 것은 서브 쿼리가 여러 개의 값을 반환하여, id를 여러개와 비교한다는 뜻이다.

이 역시 해당 서브 쿼리를 조인으로 바꿔 쓸 수 있다.

Q. 예를 들어, 판매된 상품들의 이름과 가격을 알고 싶다고 가정해보자.

SELECT name, cost FROM product WHERE id IN ( SELECT product_id FROM sale ); — 서브 쿼리가 반환한 product_id 목록은 sale 테이블에서 가져왔기 때문에, 이는 오직 판매된 상품을 의미.

name cost armchair 500.00 lamp 85.00 bench 2000.00 desk 900.00

product 테이블에는 상품의 종류가 7개이지만, 결과를 보니 팔린 상품의 종류는 4개뿐인 것을 확인할 수 있다.

[ INNER JOIN으로 변환 ]

# 1:1 inner join을 하고 중복되는 레코드는 제거 SELECT distinct p.name, p.cost FROM product AS p JOIN sale AS s ON p.id = s.product_id;

3) 중첩 서브 쿼리 (복수행) – NOT IN 연산자

SELECT name, cost FROM product WHERE id NOT IN ( SELECT product_id FROM sale ); — sale 즉 팔리지 않는 상품들만 출력

name cost chair 245.00 stool 2500.00

[ Exclusive JOIN으로 변환 ]

A가 product / B가 sale 이라 보면 된다

— sale 테이블과 조인해도 sale 레코드값을 가지고 있지 않는 product 컬럼 풀력 SELECT DISTINCT p.name, p.cost FROM product AS p LEFT JOIN sale AS s ON p.id = s.product_id WHERE s.product_id IS NULL;

LEFT JOIN을 통해 상품의 판매 유무와는 상관없이 모든 상품들이 조인한 테이블에 나타나게 된다.

그런 후, WHERE 절에서 product_id 가 존재하지 않는 경우(NULL)를 찾음으로써 서브 쿼리의 아이디가 외부 쿼리 테이블에 존재하지 않는 경우를 재현할 수 있다.

4) EXISTS / NOT EXISTS 서브 쿼리

EXISTS와 NOT EXISTS 연산자 안에 있는 서브 쿼리도 조인으로 대체하여 쓰기에 쉽다.

EXISTS 연산자란?

exists는 서브쿼리 전용 연산자로서, 서브쿼리가 반환하는 결과값이 있는지를 조사한다.

서브쿼리는 부모쿼리의 컬럼값을 가져와 사용할 수 있는데 (마치 java의 자식클래스의 상속개념 같이), 서브쿼리 내에서 비교하고, 단지 반환된 행이 있는지 없는지만 보고 값이 있으면 참 없으면 거짓을 반환한다.

Q. 2020년도에 팔리지 않은(NOT EXISTS) 상품들의 정보를 조회

SELECT name, cost, city FROM product as p WHERE NOT EXISTS ( SELECT id FROM sale WHERE year = 2020 AND product_id = p.id — 부모쿼리 p.id 와 서브쿼리 product_id 끼리 비교하고 반환값이 있는지 없는지 );

name cost city chair 245.00 Chicago desk 900.00 Los Angeles bench 2000.00 Seattle stool 2500.00 Austin

[ LEFT JOIN으로 변환 ]

SELECT p.name, p.cost, p.city FROM product AS p LEFT JOIN sale AS s ON p.id = s.product_id WHERE s.year != 2020 OR s.year IS NULL; — 2020년도에 안팔리거나, left join 결과 sale테이블에 없는 상품일경우 (null인경우)

EXISTS는 상황에 따라 조인(JOIN) 보다 수행시간이 더 빠를 수도 있다.

EXISTS의 경우는 inner query를 만족하는 레코드를 처음 만나는 순간 EXISTS가 true이므로 inner query를 더 이상 평가하지 않는다.

그래서 일반적으로 EXISTS보다 JOIN 속도가 빠르다고 하지만, 중복된 값이 많이 나올 경우에는 EXISTS가 더 빠르다.

서브 쿼리를 조인으로 대체할 수 없는 경우

1) GROUP BY 를 사용한 서브 쿼리가 FROM 절에 있을 때

집계된 값들을 구하고자 GROUP BY 를 사용한 서브 쿼리가 FROM 절에 들어 있을 때 (스칼라 서브쿼리) 조인으로 변환이 불가능하다.

SELECT city, sum_price FROM ( SELECT city, SUM(price) AS sum_price FROM sale GROUP BY city — group by 를 쓴 스칼라 서브쿼리 ) AS s WHERE sum_price < 2100; city sum_price Chicago 2000.00 Detroit 100.00 Cleveland 1590.00 2) 집계된 값을 반환하는 서브 쿼리가 WHERE 절에 있을 때 서브 쿼리가 집계된 하나의 값을 반환하고 그 값을 WHERE 절에서 외부 쿼리의 값과 비교할 때 변환이 불가능하다. SELECT name FROM product WHERE cost < ( SELECT AVG(price) FROM sale ); -- 평균값을 반환하고 비교 name chair armchair desk lamp 3) 서브 쿼리가 ALL 연산자에 있을 때 서브쿼리를 IN 이나 EXISTS 연산자를 사용할 경우 변환이 가능했지만, 서브 쿼리가 ALL 연산자 안에 들어 있는 경우 변환이 불가능하다. SELECT name FROM product WHERE cost > ALL( SELECT price FROM sale )

name stool

JOIN과 Sub-Query의 차이

최근 프로그래머스의 없어진 SQL 문제(없어진 기록 찾기)를 풀었는데 두 가지 풀이법[1]이 있음을 알았습니다. 평소 떠오르는대로 SQL을 짜는 편인데 이 기회를 통해 두 방법의 차이에 대해 공부, 기록하면 좋겠다 싶어 작성합니다(특히 다음 글을 많이 참고하였습니다). 글의 내용은 공부하며 보완해나갈 예정입니다.

_____

조인과 서브쿼리는 때로 동일한 결과를 얻을 수 있다. 따라서 쿼리 작성 시 서브쿼리를 사용할지 조인을 사용할지 선택하는 것이 필요하다. 이 두 녀석은 차이가 있고( 아직은 잘 모르 ), 많은 경우 서브쿼리가 사용하기 쉬워보이지만 효율성의 측면에서 조인이 권장된다[2]. 그렇다면 어떤 경우 서브쿼리를 조인으로 대체해야 할까?[4]

첫째, 스칼라 서브쿼리[5]다. 아래 예를 보자.

// 방법1. 서브쿼리 SELECT name , cost FROM product WHERE id = (SELECT product_id FROM sale WHERE price = 2000 AND product_id = product.id); // 방법2. 조인 SELECT p.name , p.cost FROM product p JOIN sale s ON p.id = s.product_id WHERE s.price = 2000;

둘째, IN절 안에 있는 서브쿼리(혹은 NOT IN절 안에 서브쿼리)다.

// IN절 안 서브쿼리 // 방법1. 서브쿼리 SELECT name , cost FROM product WHERE id IN (SELECT product_id FROM sale); // 방법2. 조인 SELECT DISTINCT p.name , p.cost FROM product p JOIN sale s ON s.product_id = p.id; // [6] // NOT IN절 안 서브쿼리 // 방법1. 서브쿼리 SELECT name , cost FROM product WHERE id NOT IN (SELECT product_id FROM sale); // 방법2. 조인 SELECT DISTINCT p.name , p.cost FROM product p LEFT JOIN sale s ON s.product_id = p.id WHERE s.product_id IS NULL;

셋째,

_____

1. 각 풀이는 다음과 같다. 둘 중 어떤 풀이가 선호될까?

— 풀이1. 서브쿼리 SELECT a.ANIMAL_ID , a.NAME FROM ANIMAL_OUTS a WHERE a.ANIMAL_ID NOT IN (SELECT b.ANIMAL_ID FROM ANIMAL_INS b) ORDER BY a.ANIMAL_ID , a.NAME; — 풀이2. 조인 SELECT OUTS.ANIMAL_ID , OUTS.NAME FROM ANIMAL_OUTS AS OUTS LEFT OUTER JOIN ANIMAL_INS AS INS ON INS.ANIMAL_ID = OUTS.ANIMAL_ID AND INS.ANIMAL_TYPE = OUTS.ANIMAL_TYPE WHERE INS.INTAKE_CONDITION IS NULL ORDER BY OUTS.ANIMAL_ID;

2. 조인으로 대체할 수 있는 서브쿼리는 대부분 조인으로 작성할 것을 권한다고 한다. 본문에도 적었지만, WHERE 절에 사용되는 IN 서브쿼리(혹은 NOT IN 서브쿼리)는 조인으로 작성할 것을 권장한다고 한다. 단, EXISTS 서브쿼리의 경우[3]는 유용하게 쓰인다고 한다.

3.

4. 이하의 SQL은 아래 테이블을 기준으로 합니다.

5. 스칼라 서브쿼리의 장단점은 아래와 같다.

단점: 메인쿼리 결과 건수만큼 반복 수행된다.

장점:

따라서

6.

_____

참고자료

인생은 양탄자의 무늬짜기 인생은 양탄자의 무늬짜기

728×90

서브쿼리란?

하나의 SQL 문에 포함되어 있는 또 다른 SQL 문

서브쿼리 사용시 주의사항

1. 서브쿼리를 괄호로 감싸서 사용

2. 서브쿼리는 단일 행 또는 복수 행 비교 연산자와 함께 사용 가능

3. 서브쿼리에서는 ORDER BY 를 사용하지 못함

서브쿼리가 사용 가능한 곳

1. SELECT 절

2. FROM 절

3. WHERE 절

4. HAVING 절

5. ORDER BY 절

6. INSERT 문의 VALUES 절

7. UPDATE 문의 SET 절

조인

두 개 이상의 테이블들을 연결 또는 결합하여 데이터를 출력하는 것

조인이 필요한 이유는 정규화에서 출발하

정규화란 불필요한 데이터의 정합성을 확보하고 이상현상 발생을 피하기 위해, 테이블을 분할하여 생성하는 것임

INNER JOIN

내부 조인이라고도 하며 JOIN 조건에서 동일한 값이 있는 행만 반환

INNER JOIN 조건에서 동일한 값이 있는 행만 반환하는게 특징

A와 B 테이블에 겹치는 부분을 가져옴 (교집합)

INNER JOIN 은 WHERE 절에서 사용하던 JOIN 조건을 FROM 절에서 정의하겠다는 의미이므로 USING 이나 ON 절을 필수적으로 사용해야 함

OUTER JOIN

한 쪽에는 데이터가 없는 경우, 데이터가 있는 쪽 테이블의 내용을 모두 출력하는 것

OUTER JOIN 에는 LEFT RIGHT JOIN이 있음

👉 LEFT OUTER JOIN

두 테이블 중 먼저 표기된(왼쪽) A 테이블의 데이터를 기준으로 A의 전체 데이터와 함께 B 테이블의 값도 가져옴

만약 B 테이블에 A테이블과 같은 값이 없으면 NULL로 채워 반환함

👉 RIGHT OUTER JOIN

두 테이블 중 나중에 표기된(오른쪽) B 테이블의 데이터를 기준으로 B의 전체 데이터와 함께 A 테이블의 값도 가져옴

만약 A 테이블에 B 테이블과 같은 값이 없으면 NULL로 채워 반환함

👉 FULL OUTER JOIN

두 테이블의 모든 값을 반환 (합집합)

이때 중복되는 데이터는 삭제함

서브쿼리와 조인의 차이점?

일반조인에서 두 테이블은 평등한 관계임

반면 서브쿼리에서는 서브쿼리가 메인 쿼리에 종속되는 관계임

반응형

So you have finished reading the 서브 쿼리 조인 차이 topic article, if you find this article useful, please share it. Thank you very much. See more: 서브쿼리 조인 속도 차이, 조인 안에 서브 쿼리, 서브쿼리 사용 이유, 서브쿼리 조인하기, 조인을 서브쿼리로, mssql 서브쿼리 조인 속도 차이, mysql 서브쿼리 조인, 오라클 서브쿼리 조인

Leave a Comment