Hướng dẫn câu lệnh IF ELSE trong SQL. Ở đây chúng ta thảo luận về Cú pháp trong Câu lệnh IF … ELSE một sơ đồ luồng và các ví dụ về các câu lệnh khác nhau.

Bạn đang xem : sql if else in select

If-else-statement-in -sql

Câu lệnh IF ELSE trong SQL là gì?

If-else được biết đến như một câu lệnh điều kiện. Tương tự trong SQL, nó được gọi là câu lệnh SQL có điều kiện. nếu & amp; cấu trúc kiểm soát khác được sử dụng hầu hết trong các thủ tục & amp; các phương pháp. Khi Nếu điều kiện được sử dụng trong SQL trong trường hợp đó thì việc thực thi diễn ra như thể hiện trong biểu thức sau:

Cú pháp:

Bắt đầu khóa học phát triển phần mềm miễn phí của bạn

Phát triển web, ngôn ngữ lập trình, Kiểm tra phần mềm & amp; những người khác

  IF (điều kiện, đúng, sai)  

Nếu biểu thức điều kiện cho kết quả là true thì biểu thức trả về giá trị trường hợp đúng, nếu không giá trị trường hợp sai sẽ được trả về.

Câu lệnh IF… ELSE còn được gọi là câu lệnh luồng điều khiển. Nó kiểm soát luồng thực thi. Việc sử dụng câu lệnh IF… ELSE có thể bỏ qua câu lệnh SQL theo một điều kiện nhất định. Điều kiện phải ở trong biểu thức boolean, có nghĩa là kết quả của biểu thức điều kiện phải là true hoặc false. Bất kỳ T-SQL nào (Transact-SQL) đều có thể được đặt trong câu lệnh IF… ELSE có điều kiện.

Áp dụng cú pháp trong câu lệnh IF… ELSE

Trong câu lệnh dưới đây, câu lệnh điều kiện IF được đánh giá là true thì câu lệnh SQL trong khối IF được thực thi, nếu không khối ELSE được thực thi.

Cú pháp số 1:

  IF & lt; câu lệnh điều kiện & gt;
BẮT ĐẦU
{ Câu lệnh sql }
CHẤM DỨT
KẾT THÚC NẾU;  

Cú pháp số 2:

  IF & lt; câu lệnh điều kiện & gt;
BẮT ĐẦU
{ Câu lệnh sql }
CHẤM DỨT
KHÁC
BẮT ĐẦU
{ Câu lệnh sql }
CHẤM DỨT
KẾT THÚC NẾU;  

Sơ đồ luồng

Sơ đồ dưới đây cho thấy cách câu lệnh if-else đóng vai trò như thế nào trong việc thực thi câu lệnh dựa trên đánh giá biểu thức:

Câu lệnh IF ELSE trong Sơ đồ luồng SQL

Sơ đồ quy trình đã cho ở trên cho biết những điều sau:

  • Nếu Điều kiện được đánh giá là true, trong trường hợp đó, khối lệnh 1 khối lệnh true sẽ được thực thi.
  • Nếu Điều kiện được đánh giá thành false, trong trường hợp đó, khối lệnh 2 trường hợp sai sẽ được thực thi.

Sau khi thực hiện câu lệnh IF… ELSE thì việc thực thi câu lệnh vô điều kiện khác vẫn tiếp tục.

Xem Thêm  Tạo mảng có độ dài cụ thể trong JavaScript - độ dài của một mảng javascript

Câu lệnh IF… ELSE trong SQL

Trong MySQL, câu lệnh IF… ELSE là một câu lệnh có điều kiện. Trong sơ đồ luồng đã cho ở trên, chúng ta có thể thấy các câu lệnh khác nhau được thực thi như thế nào & amp; bỏ qua có điều kiện:

  1. Điều kiện phải ở trong biểu thức boolean & amp; phải được đánh giá đúng / sai.
  2. IF… ELSE xử lý có điều kiện các câu lệnh T-SQL đơn hoặc nhiều câu lệnh T-SQL trong khối của nó.
  3. Khối lệnh IF… ELSE bắt đầu từ lệnh BEGIN & amp; kết thúc bằng câu lệnh END.
  4. Câu lệnh ELSE có thể được sử dụng hoặc không, tùy chọn.
  5. BẮT ĐẦU & amp; Câu lệnh END giúp SQL Server xác định điểm bắt đầu & amp; cuối câu lệnh SQL cần được thực thi. Ngoài ra, nó phân tách câu lệnh T-SQL có điều kiện.

Ví dụ # 1

Trong ví dụ này, chúng ta sẽ xem điều kiện IF… ELSE có thể được sử dụng như thế nào trong câu lệnh SQL. Ở đây, vị trí của câu lệnh IF… ELSE sẽ cho chúng ta biết cách đặt câu lệnh này một cách hiệu quả với SQL.

Câu lệnh SQL

Bảng đã cho ở trên có bản ghi trên khóa ngoại `category_id`. Trong bảng này, một thủ tục được tạo trong đó câu lệnh IF… ELSE sẽ được gọi bằng cách chuyển một đối số dưới dạng category_id.

Mã:

  DELIMITER $$
CREATE DEFINER = `root` @` localhost` THỦ TỤC `__searchItemsByCategoryId` (IN` categoryId` INT (11))
BẮT ĐẦU
IF (categoryId & lt; = 8) THEN
CHỌN * TỪ `oms_items` WHERE` category_id` & lt; = categoryId;
KHÁC
CHỌN * TỪ `oms_items` WHERE` category_id` & gt; CategoryId LIMIT 10;
HẾT NẾU;
HẾT $$
DELIMITER;  

SQL đã cho ở trên sẽ tạo một thủ tục để trích xuất bản ghi dựa trên category_id. Khi nào thì ứng dụng sẽ gọi thủ tục này bằng cách chuyển một id đầu vào là category_id.

Việc gọi quy trình có thể được thực hiện theo cách sau:

Mã:

  CALL __searchItemsByCategoryId (8);  

Kết quả của cuộc gọi thủ tục được hiển thị bên dưới:

Đầu ra đang gọi

Ví dụ # 2

Trong ví dụ cụ thể bên dưới, một thủ tục “__searchItemsByName” được tạo để tìm sản phẩm theo tên như đã nhập tại thời điểm gọi thủ tục. Ngoài ra, nếu tên được cung cấp cho quy trình là “null” trong trường hợp đó, thủ tục sẽ tìm nạp tất cả các sản phẩm.

Mã:

  DELIMITER $$
CREATE DEFINER = `root` @` localhost` THỦ TỤC `__searchItemsByName` (IN` itemName` TEXT)
BẮT ĐẦU
NẾU (itemName! = '') THÌ
CHỌN * TỪ `oms_items` WHERE` item_description` LIKE itemName;
KHÁC
CHỌN * TỪ `oms_items`;
HẾT NẾU;
HẾT $$
DELIMITER  

Có thể thực hiện truy vấn đã cho ở trên theo cách sau

Xem Thêm  Đối tượng toán học trong JavaScript với các ví dụ - đối tượng toán học trong javascript

Mã:

  CALL __searchItemsByName (‘Tụ điện’);  

Trong lệnh gọi thủ tục đã cho ở trên, tham số được truyền cho thủ tục sẽ hiển thị những bản ghi sẽ có ‘Tụ điện’ trong cột ‘item_description’ như được hiển thị trong ảnh chụp màn hình bên dưới.

'item_description'

Bây giờ, nếu việc gọi thủ tục trên được thực hiện mà không chuyển bất kỳ giá trị nào, trong trường hợp đó, tất cả các bản ghi sẽ được hiển thị.

Câu lệnh IF ELSE trong SQL-4

Ví dụ # 3

Trong bảng cho sẵn bên dưới, Nếu cần thay đổi `is_featured` thành trạng thái không hoạt động thì chúng ta có thể xem IF có thể hoạt động như thế nào trong câu lệnh SQL.

Câu lệnh IF ELSE trong SQL-5

Mã:

  CẬP NHẬT `oms_items` SET` is_featured` = IF (`is_featured` = 1, 0, 1) WHERE` item_no` = 10;  

Sau khi thực hiện truy vấn trên, trạng thái của cột `is_featured` chuyển thành 0. Nếu giá trị cột` if_featured` cho bản ghi tương ứng là 0 thì nó sẽ thay đổi thành 1.

Ví dụ # 4

Trong bảng đã cho, truy vấn sau đây hiển thị hiệu quả số lượng danh mục của các mục. Trong câu lệnh này, các truy vấn IF hoạt động giống như một câu lệnh bậc ba

Mã:

  CHỌN ĐẾM (IF (category_id = 7,1, NULL)) motor_parts,
COUNT (IF (category_id = 8,1, NULL)) mạch_item,
COUNT (IF (category_id = 9,1, NULL)) fit_goods,
COUNT (IF (category_id = 10,1, NULL)) board_parts
FROM oms_items;  

Đầu ra:

Ví dụ -6

Có thể đạt được kết quả trên bằng cách sử dụng phương thức “group_by” trong câu lệnh SQL.

Kết luận

IF… ELSE là từ một trong các điều kiện trong SQL làm giảm truy vấn & amp; làm cho hoạt động DML nhanh hơn & amp; Có hiệu quả. Nếu điều kiện phù hợp thì câu lệnh trong phạm vi khối IF sẽ được thực hiện, ngược lại câu lệnh trong khối ELSE sẽ được thực hiện. Sử dụng IF, IF… ELSE, IF- ELSEIF-ELSE các câu lệnh này hoạt động khác nhau tùy theo các trường hợp sử dụng. ELSE-IF & amp; ELSE là tùy chọn, nó có thể được sử dụng hoặc không. Nó hoàn toàn phụ thuộc vào tình huống.

Các bài báo được đề xuất

Đây là hướng dẫn về Câu lệnh IF-ELSE trong SQL. Ở đây chúng ta thảo luận về Áp dụng Cú pháp trong Câu lệnh IF… ELSE với sơ đồ luồng và các ví dụ về cách các câu lệnh khác nhau được thực thi & amp; điều kiện bị bỏ qua. Bạn cũng có thể xem qua các bài viết liên quan khác của chúng tôi để tìm hiểu thêm –

0

Chia sẻ

Xem Thêm  Ghi vào tệp bằng Python - xuất ra tệp python

Chia sẻ


Xem thêm những thông tin liên quan đến chủ đề sql nếu khác trong lựa chọn

SQL Logical Operators: and, or, not, in, between, like, any, all, exists

alt

  • Tác giả: Chuc Nguyen Van
  • Ngày đăng: 2021-10-06
  • Đánh giá: 4 ⭐ ( 8418 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: KHÓA HỌC ONLINE PHÂN TÍCH DỮ LIỆU XEM TẠI ĐÂY: https://lnkd.in/grB6KGbx

Làm cách nào để tôi thực hiện IF IF THEN trong SQL CHỌN?

  • Tác giả: qastack.vn
  • Đánh giá: 5 ⭐ ( 4441 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: [Tìm thấy giải pháp!] Câu CASElệnh gần nhất với IF trong SQL và được hỗ trợ trên tất cả các…

[Học cơ sở dữ liệu SQL] Những bí kíp tối ưu SQL Server – trải nghiệm từ thực tế

  • Tác giả: csc.edu.vn
  • Đánh giá: 4 ⭐ ( 1527 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Tối ưu SQL Server qua các tình huống thực tế. Sử dụng Index sao cho hiệu quả? Lưu ý khi xử lý correlated subquery – Sử dụng hàm EXISTS, cursor như thế nào với các truy vấn trên dữ liệu lớn…

Chọn cơ sở dữ liệu trong MySQL

  • Tác giả: vietjack.com
  • Đánh giá: 3 ⭐ ( 1824 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Chọn cơ sở dữ liệu trong MySQL – Học MySQL cơ bản đến nâng cao bắt đầu từ MySQL và PHP, Cơ sở dữ liệu, Cú pháp kết hợp MySQL và PHP, Mệnh đề WHERE, Lệnh DELETE, Truy vấn INSERT, Truy vấn UPDATE, Ràng buộc (Constraint), Truy vấn DROP, Mệnh đề ORDER BY, Mệnh đề GROUP BY, Hàm xử lý, Sử dụng JOIN, Giá trị NULL, Transaction, Sử dụng Sequence, Nhập – Xuất cơ sở dữ liệu, Phương thức Backup và Recovery, Regexp, SQL Injection và cách sử dụng trong PHP theo các bước cơ bản.

Câu lệnh SELECT, Danh sách chọn trong câu lệnh SELECT, Mệnh đề FROM, Mệnh đề WHERE, Phép hợp (UNION) trong SQL

  • Tác giả: tinhoc88.com
  • Đánh giá: 5 ⭐ ( 7761 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Bài viết sau đây sẽ giới thiệu tới các bạn về Câu lệnh SELECT, Danh sách chọn trong câu lệnh SELECT, Mệnh đề FROM, Mệnh đề WHERE,  Phép hợp (UNION) trong SQL

Cách chọn lựa dữ liệu ngẫu nhiên từ MySQL Select

  • Tác giả: www.thuthuatweb.net
  • Đánh giá: 5 ⭐ ( 5326 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Thiết kế web,Hướng dẫn làm Blog, Web

Đâu là lựa chọn tốt nhất?

  • Tác giả: nestsera.com
  • Đánh giá: 4 ⭐ ( 4695 lượt đánh giá )
  • Khớp với kết quả tìm kiếm:

Xem thêm các bài viết khác thuộc chuyên mục: Kiến thức lập trình

By ads_php