• 카테고리

    질문 & 답변
  • 세부 분야

    데이터베이스

  • 해결 여부

    미해결

쿼리 질문

23.01.27 10:09 작성 23.01.27 13:20 수정 조회수 254

0

안녕하세요~

아래 문제에서,

join nw.shippers d on b.ship_via = d.shipper_id

>> 왜 ship_via = shipper_id 인지 잘 이해가 안됩니다.

두 키 값이 같은 키 값인걸까요?

 

[문제]

-- Berlin에 살고 있는 고객이 주문한 주문 정보를 구할것

-- 고객명, 주문id, 주문일자, 주문접수 직원명, 배송업체명을 구할것.

select a.customer_id, a.contact_name, b.order_id, b.order_date

, c.first_name||' '||c.last_name as employee_name, d.company_name as shipper_name

from nw.customers a

join nw.orders b on a.customer_id = b.customer_id

join nw.employees c on b.employee_id = c.employee_id

join nw.shippers d on b.ship_via = d.shipper_id

where a.city = 'Berlin';

 

그리고 회사에서 DB2를 사용하는데, 현재 강의에서 알려주시는 postgres2 와 많은 차이가 있는지도 문의 드립니다..!

답변 1

답변을 작성해보세요.

0

안녕하십니까,

네 맞습니다. 두개의 컬럼은 컬럼명만 다를 뿐 서로 같은 키 값입니다.

그리고 DB2를 제가 사용해 보지 않아서 잘 모르겠지만,

강의는 표준 ANSI SQL을 기반으로 작성되었습니다. 다만 Date/Timestamp/Interval등은 개별 DBMS 별로 타입이나 처리함수등이 달라질 수 있습니다.

아마 섹션 3. Date, Timestamp, Interval 다루기의 일부 강의 실습은 DB2에서 동작하지 않을 수 있습니다.

전체 강의를 다 확인할 수는 없지만 나머지 강의들은 db2에서도 큰 문제가 없을 거라고 생각됩니다.

감사합니다.