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 6.3] Xóa lệnh đã hủy cũ (tôn trọng khóa ngoại)

    📖Cần ôn lý thuyết? Đọc bài giảng Buổi 6: Thay đổi dữ liệu: INSERT, UPDATE, DELETE — khóa SQL

    Dọn dẹp dữ liệu: xóa mọi lệnh có status = 'CANCELLED' và order_date < '2026-07-01' khỏi bảng Orders.

    Ràng buộc khóa ngoại: Trades.order_id tham chiếu Orders. Nếu lệnh bị xóa còn giao dịch (Trades) gắn với nó thì DELETE lệnh sẽ báo lỗi; do đó phải xóa các Trades của những lệnh đó trước, rồi mới xóa lệnh.

    Không xóa lệnh CANCELLED từ 2026-07-01 trở đi, và không xóa lệnh trạng thái khác.

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

      Orders(order_id, order_date, status), Trades(trade_id, order_id).

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

      (Chấm theo trạng thái dữ liệu: số lệnh, tổng ID lệnh, số giao dịch, số lệnh CANCELLED còn lại.)

    Ví dụ:

    Đầu vào:

    Đầu ra:

    113	6882	86	10

    Giải thích:

    7 lệnh CANCELLED trước 2026-07-01; hiện chưa có giao dịch nào gắn với chúng.

    Chủ đề

    📊 SQLSQLSQL: Buổi 6 – INSERT, UPDATE, DELETETất cả môn học

    Đang tải editor...