Announcement

Collapse
No announcement yet.

Mong các Pro UIT giúp em cái PHÉP CHIA TRONG SQL dùng not exist

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • 10520140
    replied
    Mình chỉnh lại code của bạn cho dễ nhìn

    Code:
    Select sohd 
    from HOADON 
    where not exists (
                select * from SANPHAM 
                where nuocsx=‘Trung Quoc’ and not exists (
                            select * from CTHD
                            where HOADON.sohd=CTHD.sohd and CTHD.masp=SANPHAM.masp)
                            )
    Theo mình, bài này để dễ hiểu, bạn có thể phân tích từ trong ra ngoài:

    Code:
    select * from SANPHAM 
                where nuocsx=‘Trung Quoc’ and not exists (
                            select * from CTHD
                            where HOADON.sohd=CTHD.sohd and CTHD.masp=SANPHAM.masp)
                            )
    Đây chính là những sản phẩm mà SoHD đó chưa mua (Phép trừ sử dụng NOT EXISTS: Tất cả sản phẩm - Sản phẩm đã mua)

    NOT EXISTS trả về giá trị True khi không có bộ giá trị nào trả về.

    Đưa câu truy vấn "Những sản phẩm mà SoHD đó chưa mua" trở thành điều kiện NOT EXISTS nữa thì sẽ được câu truy vấn phép chia hoàn chỉnh mà bạn đã có. Chắc chắn bạn sẽ tự suy ra được kết quả là: Số HD đã mua tất cả sản phẩm do Trung Quốc sản xuất.

    Leave a comment:


  • Mong các Pro UIT giúp em cái PHÉP CHIA TRONG SQL dùng not exist

    Sử dụng NOT EXISTS
    Ví dụ: Tìm số hóa đơn đã mua tất cả những sản phẩm do “Trung Quoc” sản xuất.
    Select sohd
    from HOADON
    where not exists (select * from SANPHAM where nuocsx=‘Trung Quoc’
    and not exists (select * from CTHD where HOADON.sohd=CTHD.sohd and CTHD.masp=SANPHAM.masp))

    Giải thích giùm em cái, cái này hồi trước học mà cô dạy giải thích em ko hiểu.

LHQC

Collapse
Working...
X