Các lượt nộp
    Danh sách bài
    Trang chủ
    Báo lỗi

    solution

    Đề bài: [MySQL] Chi tiết đặt tour qua năm bảng

    Hệ thống du lịch lưu tách thành nhiều bảng. Hãy nối năm bảng để liệt kê chi tiết mỗi lượt đặt: tên khách, tên tour, tên hướng dẫn viên, tên phương tiện.

    Bảng dat_tour:

    Cột Kiểu Ý nghĩa
    madat INT Mã lượt đặt
    makhach INT Mã khách
    matour INT Mã tour
    mahdv INT Mã HDV
    maxe INT Mã xe

    Các bảng tra cứu khach(makhach,ten), tour(matour,ten), hdv(mahdv,ten), xe(maxe,bien_so).

    Yêu cầu: in madat, tên khách khach, tên tour tour, tên HDV hdv, biển số xe. Sắp xếp theo madat tăng dần.

    Ví dụ: lượt đặt nối khách "An", tour "Sapa", HDV "Ba", xe "29A-001".

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

      SETUP SQL tạo bảng dat_tour, khach, tour, hdv, xe và chèn dữ liệu.

    • Ràng buộc đầu vào:

      Mọi khóa ngoại đều tồn tại. Không dùng NOW/CURDATE.

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

      Mỗi dòng: madat, khach, tour, hdv, xe. Sắp xếp theo madat tăng dần.

    Ví dụ:

    Đầu vào:

    CREATE TABLE dat_tour (madat INT, makhach INT, matour INT, mahdv INT, maxe INT);
    CREATE TABLE khach (makhach INT, ten VARCHAR(30));
    CREATE TABLE tour (matour INT, ten VARCHAR(30));
    CREATE TABLE hdv (mahdv INT, ten VARCHAR(30));
    CREATE TABLE xe (maxe INT, bien_so VARCHAR(15));
    INSERT INTO dat_tour VALUES (1,1,1,1,1),(2,2,1,1,2);
    INSERT INTO khach VALUES (1,'An'),(2,'Binh');
    INSERT INTO tour VALUES (1,'Sapa');
    INSERT INTO hdv VALUES (1,'Ba');
    INSERT INTO xe VALUES (1,'29A-001'),(2,'29A-002');

    Đầu ra:

    1	An	Sapa	Ba	29A-001
    2	Binh	Sapa	Ba	29A-002

    Giải thích:

    Lượt 1 nối khách An, tour Sapa, HDV Ba, xe 29A-001. Lượt 2 nối khách Binh, cùng tour và HDV, xe 29A-002.

    Đang tải editor...