Phép chiếu và phép chọn là gì?


93

Sự khác biệt giữa phép chiếu và phép chọn là gì? Là nó:

  • Phép chiếu -> để chọn các cột của bảng; và
  • Lựa chọn ---> để chọn các hàng của bảng?

Vậy phép chiếu và phép chọn có tương ứng là cắt dọc và cắt ngang không?

Câu trả lời:


180

Chính xác.

Phép chiếu có nghĩa là chọn cột (hoặc biểu thức) mà truy vấn sẽ trả về.

Lựa chọn có nghĩa là hàng nào sẽ được trả về.

nếu truy vấn là

select a, b, c from foobar where x=3;

thì "a, b, c" là phần chiếu, "trong đó x = 3" là phần chọn.


3
Quả thực là một lời giải thích rõ ràng, nhưng tôi thấy khía cạnh này của SQL khó hiểu / gây hiểu lầm: SELECTmệnh đề thực sự thực hiện một phép chiếu (không phải lựa chọn) và đó là WHEREmệnh đề thực sự thực hiện một phép chọn .
flow2k

4
@ flow2k Được quan sát tốt, nhưng đừng đổ lỗi cho tôi ;-)
Erich Kitzmueller

2
@ErichKitzmueller Ha - hãy yên tâm rằng tôi không có ý định đó; đôi khi tôi thấy rằng việc chấp nhận những điều khoản / chấp nhận những điểm tinh tế này của một định nghĩa hoặc cú pháp, khiến tôi nhớ nó tốt hơn.
flow2k

13

Đơn giản là PROJECTION xử lý việc loại bỏ hoặc lựa chọn các cột, trong khi SELECTION xử lý việc loại bỏ hoặc lựa chọn các hàng.


6

Phép chiếu: những gì đã từng được nhập trong mệnh đề lựa chọn, tức là 'danh sách cột' hoặc '*' hoặc 'biểu thức' sẽ trở thành dưới dạng phép chiếu.

* lựa chọn: * loại điều kiện nào chúng tôi đang áp dụng trên các cột đó, tức là, lấy các bản ghi được lựa chọn.

Ví dụ:

  SELECT empno,ename,dno,job from Emp 
     WHERE job='CLERK'; 

trong truy vấn ở trên, các cột "empno, ename, dno, job", những cột này được chiếu, "trong đó job = 'clerk'" được chọn


5

Phép chiếu và Phép chọn là hai phép toán một ngôi trong Đại số quan hệ và có các ứng dụng thực tế trong RDBMS (hệ quản trị cơ sở dữ liệu quan hệ).

Theo nghĩa thực tế, có Projection có nghĩa là chọn các cột (thuộc tính) cụ thể từ một bảng và Selection có nghĩa là lọc các hàng (bộ giá trị). Ngoài ra, đối với một bảng thông thường, Phép chiếu và Lựa chọn có thể được gọi là cắt hoặc lọc theo chiều dọc và ngang.

Wikipedia cung cấp các định nghĩa chính thức hơn về chúng với các ví dụ và chúng có thể hữu ích cho việc đọc thêm về đại số quan hệ:

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.