Các lượt nộp
    Danh sách bài
    Trang chủ
    Báo lỗi
    solution
    Đăng nhập
    Đăng nhập

    Đề bài: [SQL 8.2] Tất cả khách hàng kèm giao dịch (LEFT JOIN)

    📖Cần ôn lý thuyết? Đọc bài giảng Buổi 8: JOIN - Kết hợp bảng — khóa SQL

    LEFT JOIN giữ mọi dòng bảng trái, không khớp thì cột bảng phải là NULL. Liệt kê các khách hàng có customer_id từ 1 đến 10 kèm mã giao dịch (trade_id) của họ; khách hàng chưa có giao dịch nào vẫn phải hiển thị, với trade_id = NULL.

    Yêu cầu: khách hàng chưa có giao dịch xuất hiện đúng 1 dòng (không lặp dù họ có nhiều lệnh chưa khớp hay nhiều tài khoản). Sắp xếp theo customer_id, rồi trade_id tăng dần (NULL đứng trước).

    • Định dạng đầu vào:

      Customers, Accounts, Orders, Trades.

    • Định dạng đầu ra:

      customer_id, full_name, trade_id (NULL nếu chưa có giao dịch); sắp theo customer_id, trade_id.

    Ví dụ:

    Đầu vào:

    Đầu ra:

    1	Nguyen Van An	NULL
    2	Tran Thi Binh	32
    2	Tran Thi Binh	39
    2	Tran Thi Binh	69
    2	Tran Thi Binh	80
    3	Le Van Cuong	NULL
    4	Pham Thi Dung	NULL
    5	Hoang Van Em	7
    5	Hoang Van Em	12
    5	Hoang Van Em	53
    5	Hoang Van Em	60
    5	Hoang Van Em	74
    6	Vu Thi Hoa	15
    6	Vu Thi Hoa	26
    6	Vu Thi Hoa	61
    7	Dang Van Khoa	NULL
    8	Bui Thi Lan	8
    8	Bui Thi Lan	21
    9	Do Van Minh	NULL
    10	Ngo Thi Nga	NULL

    Giải thích:

    Khách 1, 3, 4, 7, 9, 10 chưa có giao dịch: mỗi người đúng 1 dòng NULL, dù khách 3 có 3 lệnh chưa khớp.

    Chủ đề

    📊 SQLSQLSQL: Buổi 8 – JOINTất cả môn học

    Đang tải editor...