Tôi đang đi qua một bài báo trước đây cho một khóa học cơ sở dữ liệu tôi tham gia và tôi đang bị mắc kẹt trên một câu hỏi SQLCách viết truy vấn "độc quyền" trong SQL?
Dưới đây là sơ đồ cung cấp
quốc gia (tên, vốn, khu vực), tên là chìa khóa
Mọi người (quốc gia, dân số, trẻ em, người lớn) nơi quốc gia đề cập đến tên ở Quốc gia, dân số là tổng dân số và trẻ em và người lớn là phần trăm trẻ em và người lớn.
Ngôn ngữ (quốc gia, ngôn ngữ, tỷ lệ phần trăm) - cho mỗi ngôn ngữ được nói ở quốc gia , nó liệt kê phần trăm dân số nói ngôn ngữ.
Đây là câu hỏi:
Viết truy vấn sau trong SQL: Tìm ngôn ngữ mà là chỉ nói trong nước có dân số vượt quá 10^7.
Đây là những gì tôi có cho đến nay:
SELECT l.language
FROM people p, language l
WHERE l.country = p.country AND
p.population > 10^7
Bit Tôi đang bối rối về là làm thế nào để kiểm tra rằng không có nước khác mà một ngôn ngữ được nói trong nhưng dân số ít hơn 10^7.
Bạn có lời khuyên nào không? Cảm ơn
Vì đây là dành cho DB c ourse, bạn nên đọc trên cú pháp nối đúng. Những gì bạn đang sử dụng là cũ/lỗi thời (nhưng vẫn còn chức năng) ký hiệu, và tôi gọi nó là "cú pháp lười biếng". –
"Chỉ hơn X" có nghĩa là "Không có gì nhỏ hơn hoặc bằng X" –
Một điều phô trương (mà tôi nghĩ câu hỏi này đang nhận được) là, đối với bất kỳ ngôn ngữ cụ thể nào, hãy tự hỏi: bao nhiêu quốc gia được nói đến, và có bao nhiêu nước trong số đó có> dân số X? Hoặc bạn có thể tự hỏi: "Nếu tôi có hai bảng, một bảng với dân số quốc gia> X, cái kia