Computer >> Máy Tính >  >> Lập trình >> SQL

Câu lệnh SQL WHERE:Hướng dẫn Cách thực hiện

Mệnh đề WHERE trong SQL giới hạn số lượng bản ghi được trả về hoặc bị ảnh hưởng bởi một lệnh. Nó được sử dụng với các mệnh đề CHỌN, CẬP NHẬT và XÓA. Bạn có thể sử dụng từ khóa AND để chỉ định nhiều điều kiện mà bạn muốn các bản ghi bị ảnh hưởng bởi lệnh của bạn đáp ứng.

Bạn có thể muốn lọc ra các kết quả của một truy vấn bằng cách sử dụng các điều kiện cụ thể. Ví dụ:bạn có thể muốn lấy danh sách nhân viên là giám đốc bán hàng. Hoặc bạn có thể muốn tìm hiểu xem ai đã bắt đầu làm việc cho một công ty sau một ngày cụ thể.

Bạn có thể sử dụng mệnh đề WHERE để lọc ra các bản ghi cụ thể trong khi chạy lệnh SQL. Câu lệnh này có thể hoạt động cùng với các mệnh đề SELECT, UPDATE và DELETE. Trong hướng dẫn này, chúng tôi sẽ trình bày cách sử dụng mệnh đề WHERE để lọc các bản ghi trong SQL.

Mệnh đề WHERE trong SQL

Mệnh đề WHERE trong SQL lọc các bản ghi đáp ứng một điều kiện cụ thể hoặc một tập hợp các điều kiện. Mệnh đề WHERE đứng sau mệnh đề "TỪ" trong câu lệnh SQL.

Đây là cú pháp cho câu lệnh này:

SELECT * FROM table WHERE column comparison value;

“Bảng CHỌN * TỪ” là một truy vấn chọn tiêu chuẩn. Chúng tôi sử dụng câu lệnh WHERE để giới hạn các bản ghi mà truy vấn của chúng tôi trả về. "Cột" đề cập đến cột trong đó điều kiện cần được đáp ứng. "So sánh" và "giá trị" đại diện cho sự so sánh mà chúng tôi muốn thực hiện.

Các so sánh tiềm năng bao gồm:

WHERE name == "Jeff";
WHERE age > 15;
WHERE salary < 50000;

Bạn có thể chỉ định nhiều câu lệnh WHERE bằng cách sử dụng từ khóa SQL AND:

81% người tham gia cho biết họ cảm thấy tự tin hơn về triển vọng công việc công nghệ của mình sau khi tham gia một cuộc thi đào tạo. Kết hợp với bootcamp ngay hôm nay.

Sinh viên tốt nghiệp bootcamp trung bình dành ít hơn sáu tháng để chuyển đổi nghề nghiệp, từ khi bắt đầu bootcamp đến khi tìm được công việc đầu tiên của họ.

CHỌN * TỪ bảng TRONG ĐÓ cột1 so sánh1 giá trị1 VÀ cột2 so sánh2 giá trị2;

Hãy xem qua một ví dụ về câu lệnh WHERE.

SQL WHERE Ví dụ:SELECT

Chúng tôi muốn có được danh sách các nhân viên là cộng tác viên bán hàng cấp cao. Để làm như vậy, chúng ta có thể sử dụng câu lệnh SQL SELECT sau:

SELECT name, title FROM employees WHERE title = 'Senior Sales Associate';

Truy vấn trả về các hàng sau đáp ứng tiêu chí của chúng tôi:

tên | tiêu đề

——- + ————————

Geoff | Cộng tác viên bán hàng cấp cao

Adam | Cộng tác viên bán hàng cấp cao

(2 hàng)

Tất cả các nhân viên ở trên đều có danh hiệu “Cộng tác viên bán hàng cấp cao”.

Hãy sử dụng một ví dụ khác. Giả sử chúng tôi muốn có danh sách mọi nhân viên kiếm được hơn 35.000 đô la mỗi năm và họ không phải là Adam. Chúng ta có thể sử dụng câu lệnh SQL sau:

SELECT name, salary FROM employees WHERE salary > 35000 AND name <> "Adam";

Truy vấn của chúng tôi trả về danh sách sau:

tên | lương

——- + ——–

Geoff | 38000

Emma | 50000

Giôn-xi | 50000

Adam | 38000

(4 hàng)

Tên của Adam không có trong kết quả của chúng tôi mặc dù anh ấy kiếm được hơn 35.000 đô la mỗi năm. Điều này là do chúng tôi đã loại trừ tên của anh ấy bằng toán tử <> trong truy vấn của chúng tôi.

Mệnh đề SQL WHERE:Cập nhật và xóa

Mệnh đề WHERE trong SQL hoạt động với các câu lệnh UPDATE và DELETE.

Ví dụ:giả sử bạn muốn cập nhật tên chi nhánh mà từng nhân viên làm việc nếu có sự tái cấu trúc công ty. Bạn có thể làm điều này bằng cách sử dụng câu lệnh UPDATE.

Chúng tôi muốn thay đổi chi nhánh của Luke từ “Boston” thành “Cambridge”, nơi đặt văn phòng mới của anh ấy. Chúng ta có thể thực hiện việc này bằng câu lệnh SQL UPDATE:

UPDATE employees SET branch = 'Cambridge' WHERE name = 'Luke';

Nếu chúng tôi truy vấn để tìm ra chi nhánh của Luke, chúng tôi nhận được tập hợp kết quả sau:

tên | chi nhánh

—— + ———–

Luke | Cambridge

(1 hàng)

Chúng ta có thể sử dụng mệnh đề WHERE với lệnh SQL DELETE.

Giả sử chúng tôi muốn xóa hồ sơ của mọi nhân viên làm việc tại chi nhánh Albany, chi nhánh đã bị đóng cửa. Chúng tôi có thể thực hiện việc này bằng lệnh sau:

Khi chúng tôi nhận được danh sách nhân viên của mình, số hàng được trả về là sáu thay vì tám:

DELETE FROM employees WHERE branch = 'Albany';

Mã của chúng tôi trả về sáu hàng:

tên | chi nhánh

——– + —————

Mike | Stamford

Hannah | San Francisco

Geoff | San Francisco

Alexis | Boston

Adam | Sacramento

Luke | Cambridge

(6 hàng)

Toán tử SQL

Mệnh đề WHERE trong SQL sử dụng các toán tử logic để lọc ra các bản ghi. Trong ví dụ đầu tiên của chúng tôi, chúng tôi đã sử dụng toán tử “bằng với” để kiểm tra tên của các cộng tác viên bán hàng cấp cao.

Có một số toán tử logic mà chúng ta có thể sử dụng để lọc ra các bản ghi khi sử dụng mệnh đề. Những điều này như sau:

Nhà điều hành Mô tả Ví dụ
= bằng WHERE name =‘Jake’
> Lớn hơn tuổi> 20
< Nhỏ hơn tuổi <20
> = Lớn hơn hoặc bằng lương => 50000
<= Nhỏ hơn hoặc bằng lương <=40000
THÍCH Đối sánh mẫu tên LIKE ‘Jo *’
TRONG Kiểm tra xem một giá trị đã chỉ định có khớp với bất kỳ giá trị nào trong danh sách không title IN (‘Sales Associate’, ‘Director of Sales’)
GIỮA Kiểm tra xem giá trị được chỉ định có nằm trong phạm vi các giá trị khác không worker_month_awards GIỮA 1 VÀ 5


Kết luận

Mệnh đề WHERE trong SQL lọc các bản ghi bị ảnh hưởng bởi một lệnh. Bạn có thể sử dụng mệnh đề WHERE trong SQL với các câu lệnh CHỌN, CẬP NHẬT và XÓA. Bạn có thể chỉ định nhiều mệnh đề WHERE bằng câu lệnh AND, nhưng bạn chỉ cần sử dụng từ khóa WHERE một lần.

Trong hướng dẫn này, chúng tôi đã đề cập đến các truy vấn, mệnh đề SQL WHERE và cách sử dụng mệnh đề trong thao tác cập nhật hoặc xóa. Chúng ta đã thảo luận về các toán tử điều kiện có thể được sử dụng với mệnh đề này.

Bạn có muốn trở thành một nhà phát triển SQL chuyên nghiệp không? Hãy xem hướng dẫn Cách học SQL của chúng tôi. Hướng dẫn này chứa danh sách các tài nguyên học tập hàng đầu để giúp bạn thành thạo SQL.