토이 프로젝트로 쇼핑몰 데이터베이스를 설계하고 있습니다. 주문 테이블과 사용자 테이블을 연결하여 주문자와 상품명을 함께 조회하려고 합니다.
코드:
CREATE TABLE users (user_id INT, name TEXT);
CREATE TABLE orders (order_id INT, user_id INT, product TEXT);
INSERT INTO users VALUES (1, '홍길동');
INSERT INTO orders VALUES (101, 1, '키보드');
SELECT user_id, name, product
FROM users
JOIN orders ON users.user_id = orders.user_id;
오류: [SQL Error] Ambiguous column name: user_id
시도: SELECT 절에 적힌 컬럼 이름들이 테이블에 실제로 존재하는지 확인해 보았고, JOIN 조건문(ON)의 오타 여부를 점검했습니다.
질문: 두 테이블에 동일한 이름의 컬럼이 있을 때, 어떤 테이블의 컬럼을 가져올지 SQL에서 어떻게 명시해야 하나요?
댓글4
모든 이야기1455
가벼운 안부부터 깊은 생각까지, 함께 나눠요.
총 1455개의 이야기
테이블 별칭 쓰고 users.user_id 이런 식으로 명시해주면 해결될듯함.
나도 처음에 이거 몰라서 한참 헤맸던 기억나네요ㅋㅋ
별칭 쓰면 쿼리 훨씬 짧아져서 편함.