Có một toán tử DISTINCT trong SQL. Tuy nhiên, tôi có một nhiệm vụ mà tôi cần để có được một số giá trị riêng biệt từ một bảng, và tôi chỉ có thể sử dụng đại số quan hệ. Là có một cách?Chọn các hàng DISTINCT trong đại số quan hệ
Trả lời
Các dự báo quan hệ luôn trả về các bộ dữ liệu riêng biệt để DISTINCT không bao giờ cần thiết. Tuples trùng lặp không được phép trong RA - đó là một sự khác biệt lớn giữa mô hình quan hệ và mô hình SQL.
Tôi biết đây là một câu hỏi cũ nhưng tôi phải phản đối, có một toán tử giống nhau trong đại số quan hệ, trong ấn bản của tôi về Hệ thống Cơ sở dữ liệu Ullmans Toàn bộ Sách trong chương sau: ,, 5.2.1 Loại bỏ trùng lặp ". Có, chắc chắn, bản sao không được phép trong các bộ bình thường, nhưng có nhiều, cho phép chúng –
Hi DDavid, tôi nghĩ rằng bạn có thể bị mất điểm do Molina, Ullman, Widom (cuốn sách tuyệt vời bằng cách này và tôi thường xuyên) Trích dẫn từ phần 5.2: "Khi DBMS sử dụng mô hình quan hệ được phát triển lần đầu tiên, ngôn ngữ truy vấn của họ phần lớn đã triển khai thực hiện đại số quan hệ. Tuy nhiên ... những hệ thống này coi quan hệ là * túi * chứ không phải tập hợp. ”(Nhấn mạnh của tôi) Họ tiếp tục chỉ ra rằng các hoạt động của túi khác với các hoạt động thiết lập được hỗ trợ bởi RA" toán tử DISTINCT "của SQL lấy một túi tuple RA loại trừ các bản sao. – sqlvogel
Đại số quan hệ dựa trên lý thuyết tập hợp. SQL là một triển khai thực hiện lý thuyết đa tập hợp. Đặt luôn có các yếu tố riêng biệt. Vì vậy, các bộ dữ liệu được phân biệt theo mặc định trong Đại số Quan hệ.
- 1. Hệ số tương quan thực sự đại diện cho
- 2. Xóa các hàng có liên quan trong mối quan hệ nhiều-nhiều-số
- 3. CHỌN DISTINCT trong Scala slick
- 4. Chọn Count Distinct
- 5. Lọc theo số quan hệ trong SQLAlchemy
- 6. đường ray COUNT CHỌN DISTINCT
- 7. CHỌN DISTINCT không hoạt động
- 8. Hệ thống đại số máy tính JavaScript
- 9. Chọn Số hàng trong postgres
- 10. Xóa các hàng trong khung dữ liệu với hệ số ""
- 11. Các lựa chọn thay thế nhanh hơn .Distinct()
- 12. Chọn các hàng từ một số NumPy
- 13. Entity Framework tùy chọn: tùy chọn mối quan hệ
- 14. CHỌN tuyên bố DISTINCT trong MySQL đang 10 phút
- 15. Cách giữ quan hệ khóa ngoại nhất quán trong hệ thống quan hệ "hình kim cương" của mối quan hệ
- 16. Các ví dụ về mối quan hệ nhiều-nhiều-số
- 17. Xóa các ngoại lệ khỏi tính hệ số tương quan
- 18. Tham số quan hệ là gì?
- 19. Chọn số hàng cụ thể trong sql
- 20. Nhiều mối quan hệ trong JSON
- 21. Quan hệ One-To-nhiều-Django-ngon trong số
- 22. mối quan hệ One-to-Nhiều trong (Postgre) SQL
- 23. Số hàng trong Oracle SQL Chọn?
- 24. Ba cửa hàng và Cơ sở dữ liệu quan hệ
- 25. Học thuyết 2 bên tráiHoạt động, với mối quan hệ nhiều, sai số hàng trả về
- 26. NSTokenField đại diện cho dữ liệu cốt lõi cho nhiều mối quan hệ
- 27. Làm thế nào để CHỌN DISTINCT trong cassandra
- 28. Các tham số kiểu không thuộc hệ thống tùy chọn
- 29. Chọn các hàng riêng biệt từ MongoDB
- 30. CakePHP DISTINCT
Có thể bạn có thể sử dụng toán tử chia Rel1 ÷ Rel1! –