Hiển thị kết quả từ 1 đến 6 / 6
  1. #1
    Tham gia
    17-01-2010
    Bài viết
    24
    Like
    0
    Thanked 0 Times in 0 Posts

    gúp minh bài tập này với !!

    Giúp mình bài này với:
    Nhanvien(msnv,ten_nv,ngay_sinh)
    Trình _độ(msnv,ngoai_ngu,trình_do)
    Liệt kê các nhân viên vừa biết ’ anh văn’ vừa biết ‘hoa văn’
    mh cám on!!!!!!!
    Quote Quote

  2. #2
    Tham gia
    15-03-2010
    Bài viết
    1,562
    Like
    84
    Thanked 1,571 Times in 860 Posts
    CSDL là chỗ để phân tích. Muốn phân tích thì phải có đủ tin tức. Hỏi về dữ liệu thì phải cho người ta biết đủ chi tiết.

    Giả sử trường ngoaingu chứa 'Anh' hoặc 'Hoa' hoặc gì gì đó. Và giả sử trường trinhdo không liên quan gì đến "biết" hay "không biết". (Chỉ viết một query ngắn mà phải đặt 2 giả sử!)

    Lập một subquery select bảng Trinh_do có ngoaingu = 'Anh'
    Lập một subquery select bảng Trinh_do có ngoaingu = 'Hoa'
    inner join hai sub này với nhau qua trường MsNV

  3. #3
    Tham gia
    27-08-2009
    Bài viết
    24
    Like
    0
    Thanked 0 Times in 0 Posts
    hình như bạn viêt thiếu đề :d

  4. #4
    Tham gia
    29-10-2010
    Bài viết
    2
    Like
    0
    Thanked 0 Times in 0 Posts
    Select nhanvien.*
    from nhanvien,trinhdo
    where (nhanvien.manv=trinhdo.manv)and(ngoaingu=anhvan)an d(ngoaingu=hoavan)

  5. #5
    Tham gia
    07-08-2007
    Location
    Ha noi
    Bài viết
    59
    Like
    0
    Thanked 6 Times in 6 Posts
    select a.* from Nhanvien a where msnv in (
    select msnv from
    (
    select msnv, count(*) tong_nn from Trinh_do
    where ngoai_ngu in ('anh van','hoa van')
    group by msnv
    having count(*) > 1
    ) b )

  6. #6
    Tham gia
    15-03-2010
    Bài viết
    1,562
    Like
    84
    Thanked 1,571 Times in 860 Posts
    @tonysonpham:
    Cái lô gíc này sẽ tìm ra zê rô dòng
    (ngoaingu=anhvan) and (ngoaingu=hoavan)
    Nếu anhvan <> hoavan => không có trị ngoaingu nào có thể thỏa mãn điều kiện trên

    @dpr:
    Yêu cầu chỉ giản dị thôi, câu truy vấn rắc rối quá.

    Select a.* from NhanVien a
    inner join Trinh_do b on a.msnv = b.msnv
    inner join Trinh_do c on a.msnv = c.msnv
    where b.ngoaingu = 'Anh' and c.ngoaingu = 'Hoa'

    Như đã nói trước đây, muốn giới hạn 'trình độ' như thế nào thì cứ việc thêm vào vài cái 'and' nữa.

Bookmarks

Quy định

  • Bạn không thể tạo chủ đề mới
  • Bạn không thể trả lời bài viết
  • Bạn không thể gửi file đính kèm
  • Bạn không thể sửa bài viết của mình
  •