본문 바로가기

DataBase

[SQL] INNER JOIN 사용하는 방법을 예시로 알려드립니다.

반응형

 

INNER JOIN은 SQL에서 사용되는 데이터베이스 테이블 간의 관계를 설정하고, 일치하는 행을 반환하는 데 사용되는 중요한 SQL 연산자입니다. INNER JOIN은 두 개 이상의 테이블에서 행을 결합하고, 일치하는 값을 찾아서 결과 집합을 생성합니다.

 

여기에 INNER JOIN에 대한 간단한 예시를 제시하겠습니다. 두 개의 테이블인 Customers와 Orders를 가정해보겠습니다. Customers 테이블에는 고객 정보가 저장되어 있고, Orders 테이블에는 주문 정보가 저장되어 있습니다. 이 두 테이블을 INNER JOIN하여 특정 고객의 주문 목록을 가져오는 예시를 살펴봅니다.

Customers 테이블

CREATE TABLE Customers (
    CustomerID int PRIMARY KEY,
    CustomerName varchar(255),
    ContactName varchar(255),
    Country varchar(255
);

Orders 테이블

CREATE TABLE Orders (
    OrderID int PRIMARY KEY,
    CustomerID int,
    OrderDate date,
    ShipDate date,
);

두 테이블을 INNER JOIN하여 특정 고객의 주문 목록을 가져오는 쿼리는 다음과 같습니다

SELECT Customers.CustomerName, Orders.OrderID, Orders.OrderDate
FROM Customers
INNER JOIN Orders ON Customers.CustomerID = Orders.CustomerID
WHERE Customers.CustomerName = 'John Doe';

이 쿼리는 다음과 같은 작업을 수행합니다:

Customers 테이블과 Orders 테이블을 INNER JOIN합니다. 이 INNER JOIN은 Customers 테이블의 CustomerID와 Orders 테이블의 CustomerID 사이의 일치를 찾습니다.

SELECT 문을 사용하여 결과 집합에서 가져올 열을 지정합니다.

 이 경우, Customers.CustomerName, Orders.OrderID, 및 Orders.OrderDate 열을 선택했습니다.

WHERE 절을 사용하여 특정 고객인 'John Doe'의 주문만 가져오도록 필터링합니다.

이 쿼리는 'John Doe'라는 특정 고객의 주문 목록을 반환합니다. INNER JOIN은 특정 조건에 따라 두 테이블을 결합하고 필요한 데이터를 추출하는 데 사용됩니다.

 

실제로 적용한 Mysql 쿼리문

SELECT
    A.*,
    B.member_fee,
    B.member_fee_50,
    B.member_fee_100,
    B.non_member_fee
FROM
    evreone.EV_STATION_API A
INNER JOIN
    evreone.EV_CHARGER_FEE B ON A.busiId =B.busid;
반응형