Hướng dẫn how do i write an if statement in mysql? - làm cách nào để viết câu lệnh if trong mysql?

Các chức năng MySQL

Thí dụ

Trả lại "có" nếu điều kiện là đúng hoặc "không" nếu điều kiện là sai:

Chọn nếu [500

Hãy tự mình thử »

Định nghĩa và cách sử dụng

Hàm if [] trả về một giá trị nếu một điều kiện là đúng hoặc giá trị khác nếu một điều kiện là sai.

Cú pháp

If [điều kiện, value_if_true, value_if_false]

Giá trị tham số

Tham sốSự mô tả
tình trạngYêu cầu. Giá trị để kiểm tra
value_if_trueYêu cầu. Giá trị để trả lại nếu điều kiện là đúng
value_if_falseYêu cầu. Giá trị để trả lại nếu điều kiện là sai

Chi tiết kỹ thuật

Hoạt động trong:
Từ MySQL 4.0

Nhiều ví dụ hơn

Thí dụ

Trả lại 5 nếu điều kiện là đúng hoặc 10 nếu điều kiện là sai:

Chọn nếu [500

Hãy tự mình thử »

Thí dụ

Định nghĩa và cách sử dụng

Hàm if [] trả về một giá trị nếu một điều kiện là đúng hoặc giá trị khác nếu một điều kiện là sai.

Hãy tự mình thử »

Thí dụ

Định nghĩa và cách sử dụng

Hàm if [] trả về một giá trị nếu một điều kiện là đúng hoặc giá trị khác nếu một điều kiện là sai.
FROM OrderDetails;

Hãy tự mình thử »

Định nghĩa và cách sử dụng


Thí dụ

Trả lại "có" nếu điều kiện là đúng hoặc "không" nếu điều kiện là sai:

Chọn nếu [500

Hãy tự mình thử »

Định nghĩa và cách sử dụng

Hàm if [] trả về một giá trị nếu một điều kiện là đúng hoặc giá trị khác nếu một điều kiện là sai.

Cú pháp

If [điều kiện, value_if_true, value_if_false]

Giá trị tham số

Tham sốSự mô tả
tình trạngYêu cầu. Giá trị để kiểm tra
value_if_trueYêu cầu. Giá trị để trả lại nếu điều kiện là đúng
value_if_falseYêu cầu. Giá trị để trả lại nếu điều kiện là sai

Chi tiết kỹ thuật

Hoạt động trong:
Từ MySQL 4.0

Nhiều ví dụ hơn

Thí dụ

Trả lại "có" nếu điều kiện là đúng hoặc "không" nếu điều kiện là sai:

Chọn nếu [500

Hãy tự mình thử »

Thí dụ

Trả lại "có" nếu điều kiện là đúng hoặc "không" nếu điều kiện là sai:

Chọn nếu [500

Hãy tự mình thử »

Thí dụ

Trả lại "có" nếu điều kiện là đúng hoặc "không" nếu điều kiện là sai:

Chọn nếu [500
FROM OrderDetails;

Hãy tự mình thử »



Tóm tắt: Trong hướng dẫn này, bạn sẽ tìm hiểu cách sử dụng câu lệnh MySQL nếu thực thi một khối mã SQL dựa trên một điều kiện được chỉ định.: in this tutorial, you will learn how to use MySQL IF statement to execute a block of SQL code based on a specified condition.

Lưu ý rằng MySQL có hàm if [] khác với câu lệnh

DELIMITER $$ CREATE PROCEDURE GetCustomerLevel[ IN pCustomerNumber INT, OUT pCustomerLevel VARCHAR[20]] BEGIN DECLARE credit DECIMAL[10,2] DEFAULT 0; SELECT creditLimit INTO credit FROM customers WHERE customerNumber = pCustomerNumber; IF credit > 50000 THEN SET pCustomerLevel = 'PLATINUM'; END IF; END$$ DELIMITER ;

Code language: SQL [Structured Query Language] [sql]
3 được mô tả trong hướng dẫn này.

Tuyên bố

DELIMITER $$ CREATE PROCEDURE GetCustomerLevel[ IN pCustomerNumber INT, OUT pCustomerLevel VARCHAR[20]] BEGIN DECLARE credit DECIMAL[10,2] DEFAULT 0; SELECT creditLimit INTO credit FROM customers WHERE customerNumber = pCustomerNumber; IF credit > 50000 THEN SET pCustomerLevel = 'PLATINUM'; END IF; END$$ DELIMITER ;

Code language: SQL [Structured Query Language] [sql]
3 có ba biểu mẫu: câu lệnh đơn giản ____ 15 & nbsp; câu lệnh

DELIMITER $$ CREATE PROCEDURE GetCustomerLevel[ IN pCustomerNumber INT, OUT pCustomerLevel VARCHAR[20]] BEGIN DECLARE credit DECIMAL[10,2] DEFAULT 0; SELECT creditLimit INTO credit FROM customers WHERE customerNumber = pCustomerNumber; IF credit > 50000 THEN SET pCustomerLevel = 'PLATINUM'; END IF; END$$ DELIMITER ;

Code language: SQL [Structured Query Language] [sql]
6 và câu lệnh

DELIMITER $$ CREATE PROCEDURE GetCustomerLevel[ IN pCustomerNumber INT, OUT pCustomerLevel VARCHAR[20]] BEGIN DECLARE credit DECIMAL[10,2] DEFAULT 0; SELECT creditLimit INTO credit FROM customers WHERE customerNumber = pCustomerNumber; IF credit > 50000 THEN SET pCustomerLevel = 'PLATINUM'; END IF; END$$ DELIMITER ;

Code language: SQL [Structured Query Language] [sql]
7.

Câu lệnh mysql đơn giản

DELIMITER $$ CREATE PROCEDURE GetCustomerLevel[ IN pCustomerNumber INT, OUT pCustomerLevel VARCHAR[20]] BEGIN DECLARE credit DECIMAL[10,2] DEFAULT 0; SELECT creditLimit INTO credit FROM customers WHERE customerNumber = pCustomerNumber; IF credit > 50000 THEN SET pCustomerLevel = 'PLATINUM'; END IF; END$$ DELIMITER ;

Code language: SQL [Structured Query Language] [sql]
5

Câu lệnh

DELIMITER $$ CREATE PROCEDURE GetCustomerLevel[ IN pCustomerNumber INT, OUT pCustomerLevel VARCHAR[20]] BEGIN DECLARE credit DECIMAL[10,2] DEFAULT 0; SELECT creditLimit INTO credit FROM customers WHERE customerNumber = pCustomerNumber; IF credit > 50000 THEN SET pCustomerLevel = 'PLATINUM'; END IF; END$$ DELIMITER ;

Code language: SQL [Structured Query Language] [sql]
5 cho phép bạn thực thi một tập hợp các câu lệnh SQL dựa trên một điều kiện được chỉ định. Sau đây minh họa cú pháp của câu lệnh

DELIMITER $$ CREATE PROCEDURE GetCustomerLevel[ IN pCustomerNumber INT, OUT pCustomerLevel VARCHAR[20]] BEGIN DECLARE credit DECIMAL[10,2] DEFAULT 0; SELECT creditLimit INTO credit FROM customers WHERE customerNumber = pCustomerNumber; IF credit > 50000 THEN SET pCustomerLevel = 'PLATINUM'; END IF; END$$ DELIMITER ;

Code language: SQL [Structured Query Language] [sql]
5:

IF condition THEN statements; END IF;

Code language: SQL [Structured Query Language] [sql]

Trong cú pháp này:

  • Đầu tiên, chỉ định một điều kiện để thực thi mã giữa

    DELIMITER $$ CREATE PROCEDURE GetCustomerLevel[ IN pCustomerNumber INT, OUT pCustomerLevel VARCHAR[20]] BEGIN DECLARE credit DECIMAL[10,2] DEFAULT 0; SELECT creditLimit INTO credit FROM customers WHERE customerNumber = pCustomerNumber; IF credit > 50000 THEN SET pCustomerLevel = 'PLATINUM'; END IF; END$$ DELIMITER ;

    Code language: SQL [Structured Query Language] [sql]
    5 và

    SELECT customerNumber, creditLimit FROM customers WHERE creditLimit > 50000 ORDER BY creditLimit DESC;

    Code language: SQL [Structured Query Language] [sql]
    2. Nếu

    SELECT customerNumber, creditLimit FROM customers WHERE creditLimit > 50000 ORDER BY creditLimit DESC;

    Code language: SQL [Structured Query Language] [sql]
    3 đánh giá thành

    SELECT customerNumber, creditLimit FROM customers WHERE creditLimit > 50000 ORDER BY creditLimit DESC;

    Code language: SQL [Structured Query Language] [sql]
    4, các câu lệnh giữa

    DELIMITER $$ CREATE PROCEDURE GetCustomerLevel[ IN pCustomerNumber INT, OUT pCustomerLevel VARCHAR[20]] BEGIN DECLARE credit DECIMAL[10,2] DEFAULT 0; SELECT creditLimit INTO credit FROM customers WHERE customerNumber = pCustomerNumber; IF credit > 50000 THEN SET pCustomerLevel = 'PLATINUM'; END IF; END$$ DELIMITER ;

    Code language: SQL [Structured Query Language] [sql]
    5 và

    SELECT customerNumber, creditLimit FROM customers WHERE creditLimit > 50000 ORDER BY creditLimit DESC;

    Code language: SQL [Structured Query Language] [sql]
    2 sẽ thực thi. Mặt khác, điều khiển được chuyển sang câu lệnh tiếp theo sau

    SELECT customerNumber, creditLimit FROM customers WHERE creditLimit > 50000 ORDER BY creditLimit DESC;

    Code language: SQL [Structured Query Language] [sql]
    2.
  • Thứ hai, chỉ định mã sẽ thực thi nếu

    SELECT customerNumber, creditLimit FROM customers WHERE creditLimit > 50000 ORDER BY creditLimit DESC;

    Code language: SQL [Structured Query Language] [sql]
    3 đánh giá thành

    SELECT customerNumber, creditLimit FROM customers WHERE creditLimit > 50000 ORDER BY creditLimit DESC;

    Code language: SQL [Structured Query Language] [sql]
    4.

Chúng tôi sẽ sử dụng bảng

CALL GetCustomerLevel[141, @level]; SELECT @level;

Code language: SQL [Structured Query Language] [sql]
0 từ cơ sở dữ liệu mẫu để trình diễn:

Xem thủ tục được lưu trữ

CALL GetCustomerLevel[141, @level]; SELECT @level;

Code language: SQL [Structured Query Language] [sql]
1 sau đây.

DELIMITER $$ CREATE PROCEDURE GetCustomerLevel[ IN pCustomerNumber INT, OUT pCustomerLevel VARCHAR[20]] BEGIN DECLARE credit DECIMAL[10,2] DEFAULT 0; SELECT creditLimit INTO credit FROM customers WHERE customerNumber = pCustomerNumber; IF credit > 50000 THEN SET pCustomerLevel = 'PLATINUM'; END IF; END$$ DELIMITER ;

Code language: SQL [Structured Query Language] [sql]

Quy trình được lưu trữ

CALL GetCustomerLevel[141, @level]; SELECT @level;

Code language: SQL [Structured Query Language] [sql]
1 chấp nhận hai tham số:

CALL GetCustomerLevel[141, @level]; SELECT @level;

Code language: SQL [Structured Query Language] [sql]
3 và

CALL GetCustomerLevel[141, @level]; SELECT @level;

Code language: SQL [Structured Query Language] [sql]
4.

  • Đầu tiên, chọn

    CALL GetCustomerLevel[141, @level]; SELECT @level;

    Code language: SQL [Structured Query Language] [sql]
    5 của khách hàng được chỉ định bởi

    CALL GetCustomerLevel[141, @level]; SELECT @level;

    Code language: SQL [Structured Query Language] [sql]
    3 từ bảng

    CALL GetCustomerLevel[141, @level]; SELECT @level;

    Code language: SQL [Structured Query Language] [sql]
    0 và lưu trữ nó trong biến cục bộ

    CALL GetCustomerLevel[141, @level]; SELECT @level;

    Code language: SQL [Structured Query Language] [sql]
    8.
  • Sau đó, đặt giá trị cho tham số

    CALL GetCustomerLevel[141, @level]; SELECT @level;

    Code language: SQL [Structured Query Language] [sql]
    9

    CALL GetCustomerLevel[141, @level]; SELECT @level;

    Code language: SQL [Structured Query Language] [sql]
    4 thành

    IF condition THEN statements; ELSE else-statements; END IF;

    Code language: SQL [Structured Query Language] [sql]
    1 nếu giới hạn tín dụng của khách hàng lớn hơn

    IF condition THEN statements; ELSE else-statements; END IF;

    Code language: SQL [Structured Query Language] [sql]
    2.

Tuyên bố này tìm thấy tất cả các khách hàng có giới hạn tín dụng lớn hơn

IF condition THEN statements; ELSE else-statements; END IF;

Code language: SQL [Structured Query Language] [sql]
2:

SELECT customerNumber, creditLimit FROM customers WHERE creditLimit > 50000 ORDER BY creditLimit DESC;

Code language: SQL [Structured Query Language] [sql]

Đây là đầu ra một phần:

Các câu lệnh này gọi quy trình được lưu trữ

CALL GetCustomerLevel[141, @level]; SELECT @level;

Code language: SQL [Structured Query Language] [sql]
1 cho khách hàng 141 và hiển thị giá trị của tham số

CALL GetCustomerLevel[141, @level]; SELECT @level;

Code language: SQL [Structured Query Language] [sql]
9

CALL GetCustomerLevel[141, @level]; SELECT @level;

Code language: SQL [Structured Query Language] [sql]
4:

CALL GetCustomerLevel[141, @level]; SELECT @level;

Code language: SQL [Structured Query Language] [sql]
Vì khách hàng 141 có giới hạn tín dụng lớn hơn

IF condition THEN statements; ELSE else-statements; END IF;

Code language: SQL [Structured Query Language] [sql]
2, mức của nó được đặt thành

IF condition THEN statements; ELSE else-statements; END IF;

Code language: SQL [Structured Query Language] [sql]
1 như mong đợi.

Because the customer 141 has a credit limit greater than

IF condition THEN statements; ELSE else-statements; END IF;

Code language: SQL [Structured Query Language] [sql]
2, its level is set to

IF condition THEN statements; ELSE else-statements; END IF;

Code language: SQL [Structured Query Language] [sql]
1 as expected.

Tuyên bố MySQL

DELIMITER $$ CREATE PROCEDURE GetCustomerLevel[ IN pCustomerNumber INT, OUT pCustomerLevel VARCHAR[20]] BEGIN DECLARE credit DECIMAL[10,2] DEFAULT 0; SELECT creditLimit INTO credit FROM customers WHERE customerNumber = pCustomerNumber; IF credit > 50000 THEN SET pCustomerLevel = 'PLATINUM'; END IF; END$$ DELIMITER ;

Code language: SQL [Structured Query Language] [sql]
6

Trong trường hợp bạn muốn thực hiện các câu lệnh khác khi

SELECT customerNumber, creditLimit FROM customers WHERE creditLimit > 50000 ORDER BY creditLimit DESC;

Code language: SQL [Structured Query Language] [sql]
3 trong nhánh

DELIMITER $$ CREATE PROCEDURE GetCustomerLevel[ IN pCustomerNumber INT, OUT pCustomerLevel VARCHAR[20]] BEGIN DECLARE credit DECIMAL[10,2] DEFAULT 0; SELECT creditLimit INTO credit FROM customers WHERE customerNumber = pCustomerNumber; IF credit > 50000 THEN SET pCustomerLevel = 'PLATINUM'; END IF; END$$ DELIMITER ;

Code language: SQL [Structured Query Language] [sql]
3 không đánh giá thành

SELECT customerNumber, creditLimit FROM customers WHERE creditLimit > 50000 ORDER BY creditLimit DESC;

Code language: SQL [Structured Query Language] [sql]
4, bạn có thể sử dụng câu lệnh

DELIMITER $$ CREATE PROCEDURE GetCustomerLevel[ IN pCustomerNumber INT, OUT pCustomerLevel VARCHAR[20]] BEGIN DECLARE credit DECIMAL[10,2] DEFAULT 0; SELECT creditLimit INTO credit FROM customers WHERE customerNumber = pCustomerNumber; IF credit > 50000 THEN SET pCustomerLevel = 'PLATINUM'; END IF; END$$ DELIMITER ;

Code language: SQL [Structured Query Language] [sql]
6 như sau:

IF condition THEN statements; ELSE else-statements; END IF;

Code language: SQL [Structured Query Language] [sql]

Trong cú pháp này, nếu

SELECT customerNumber, creditLimit FROM customers WHERE creditLimit > 50000 ORDER BY creditLimit DESC;

Code language: SQL [Structured Query Language] [sql]
3 đánh giá thành

SELECT customerNumber, creditLimit FROM customers WHERE creditLimit > 50000 ORDER BY creditLimit DESC;

Code language: SQL [Structured Query Language] [sql]
4,

DROP PROCEDURE GetCustomerLevel;

Code language: SQL [Structured Query Language] [sql]
6 giữa

DELIMITER $$ CREATE PROCEDURE GetCustomerLevel[ IN pCustomerNumber INT, OUT pCustomerLevel VARCHAR[20]] BEGIN DECLARE credit DECIMAL[10,2] DEFAULT 0; SELECT creditLimit INTO credit FROM customers WHERE customerNumber = pCustomerNumber; IF credit > 50000 THEN SET pCustomerLevel = 'PLATINUM'; END IF; END$$ DELIMITER ;

Code language: SQL [Structured Query Language] [sql]
5 và

DROP PROCEDURE GetCustomerLevel;

Code language: SQL [Structured Query Language] [sql]
8 thực thi. Mặt khác,

DROP PROCEDURE GetCustomerLevel;

Code language: SQL [Structured Query Language] [sql]
9 giữa thực thi

DROP PROCEDURE GetCustomerLevel;

Code language: SQL [Structured Query Language] [sql]
8 và

SELECT customerNumber, creditLimit FROM customers WHERE creditLimit > 50000 ORDER BY creditLimit DESC;

Code language: SQL [Structured Query Language] [sql]
2.

Hãy để sửa đổi quy trình được lưu trữ

CALL GetCustomerLevel[141, @level]; SELECT @level;

Code language: SQL [Structured Query Language] [sql]
1.

Đầu tiên, hãy bỏ thủ tục lưu trữ

CALL GetCustomerLevel[141, @level]; SELECT @level;

Code language: SQL [Structured Query Language] [sql]
1:

DROP PROCEDURE GetCustomerLevel;

Code language: SQL [Structured Query Language] [sql]

Sau đó, tạo quy trình được lưu trữ

CALL GetCustomerLevel[141, @level]; SELECT @level;

Code language: SQL [Structured Query Language] [sql]
1 với mã mới:

DELIMITER $$ CREATE PROCEDURE GetCustomerLevel[ IN pCustomerNumber INT, OUT pCustomerLevel VARCHAR[20]] BEGIN DECLARE credit DECIMAL DEFAULT 0; SELECT creditLimit INTO credit FROM customers WHERE customerNumber = pCustomerNumber; IF credit > 50000 THEN SET pCustomerLevel = 'PLATINUM'; ELSE SET pCustomerLevel = 'NOT PLATINUM'; END IF; END$$ DELIMITER ;

Code language: SQL [Structured Query Language] [sql]

Trong quy trình được lưu trữ mới này, chúng tôi bao gồm chi nhánh

DROP PROCEDURE GetCustomerLevel;

Code language: SQL [Structured Query Language] [sql]
8. Nếu

CALL GetCustomerLevel[141, @level]; SELECT @level;

Code language: SQL [Structured Query Language] [sql]
8 không lớn hơn

IF condition THEN statements; ELSE else-statements; END IF;

Code language: SQL [Structured Query Language] [sql]
2, chúng tôi sẽ đặt cấp độ khách hàng thành

DELIMITER $$ CREATE PROCEDURE GetCustomerLevel[ IN pCustomerNumber INT, OUT pCustomerLevel VARCHAR[20]] BEGIN DECLARE credit DECIMAL DEFAULT 0; SELECT creditLimit INTO credit FROM customers WHERE customerNumber = pCustomerNumber; IF credit > 50000 THEN SET pCustomerLevel = 'PLATINUM'; ELSE SET pCustomerLevel = 'NOT PLATINUM'; END IF; END$$ DELIMITER ;

Code language: SQL [Structured Query Language] [sql]
8 trong khối giữa

DROP PROCEDURE GetCustomerLevel;

Code language: SQL [Structured Query Language] [sql]
8 và

SELECT customerNumber, creditLimit FROM customers WHERE creditLimit > 50000 ORDER BY creditLimit DESC;

Code language: SQL [Structured Query Language] [sql]
2.

Truy vấn này tìm thấy khách hàng có giới hạn tín dụng nhỏ hơn hoặc bằng

IF condition THEN statements; ELSE else-statements; END IF;

Code language: SQL [Structured Query Language] [sql]
2:

SELECT customerNumber, creditLimit FROM customers WHERE creditLimit 50000 ORDER BY creditLimit DESC;

Code language: SQL [Structured Query Language] [sql]
4, & nbsp;

DROP PROCEDURE GetCustomerLevel;

Code language: SQL [Structured Query Language] [sql]
6 trong nhánh

DELIMITER $$ CREATE PROCEDURE GetCustomerLevel[ IN pCustomerNumber INT, OUT pCustomerLevel VARCHAR[20]] BEGIN DECLARE credit DECIMAL[10,2] DEFAULT 0; SELECT creditLimit INTO credit FROM customers WHERE customerNumber = pCustomerNumber; IF credit > 50000 THEN SET pCustomerLevel = 'PLATINUM'; END IF; END$$ DELIMITER ;

Code language: SQL [Structured Query Language] [sql]
5 thực thi; Nếu không,

CALL GetCustomerLevel[447, @level]; SELECT @level;

Code language: SQL [Structured Query Language] [sql]
7 tiếp theo được đánh giá.

Nếu

CALL GetCustomerLevel[447, @level]; SELECT @level;

Code language: SQL [Structured Query Language] [sql]
7 đánh giá thành

SELECT customerNumber, creditLimit FROM customers WHERE creditLimit > 50000 ORDER BY creditLimit DESC;

Code language: SQL [Structured Query Language] [sql]
4,

IF condition THEN statements; ELSEIF elseif-condition THEN elseif-statements; ... ELSE else-statements; END IF;

Code language: SQL [Structured Query Language] [sql]
0 sẽ thực thi; Nếu không,

CALL GetCustomerLevel[447, @level]; SELECT @level;

Code language: SQL [Structured Query Language] [sql]
7 tiếp theo được đánh giá.

Tuyên bố

CALL GetCustomerLevel[447, @level]; SELECT @level;

Code language: SQL [Structured Query Language] [sql]
1 có thể có nhiều nhánh

IF condition THEN statements; ELSEIF elseif-condition THEN elseif-statements; ... ELSE else-statements; END IF;

Code language: SQL [Structured Query Language] [sql]
3.

Nếu không có điều kiện nào trong

DELIMITER $$ CREATE PROCEDURE GetCustomerLevel[ IN pCustomerNumber INT, OUT pCustomerLevel VARCHAR[20]] BEGIN DECLARE credit DECIMAL[10,2] DEFAULT 0; SELECT creditLimit INTO credit FROM customers WHERE customerNumber = pCustomerNumber; IF credit > 50000 THEN SET pCustomerLevel = 'PLATINUM'; END IF; END$$ DELIMITER ;

Code language: SQL [Structured Query Language] [sql]
3 và

IF condition THEN statements; ELSEIF elseif-condition THEN elseif-statements; ... ELSE else-statements; END IF;

Code language: SQL [Structured Query Language] [sql]
5 đánh giá thành

SELECT customerNumber, creditLimit FROM customers WHERE creditLimit > 50000 ORDER BY creditLimit DESC;

Code language: SQL [Structured Query Language] [sql]
4,

DROP PROCEDURE GetCustomerLevel;

Code language: SQL [Structured Query Language] [sql]
9 trong nhánh

DROP PROCEDURE GetCustomerLevel;

Code language: SQL [Structured Query Language] [sql]
8 sẽ thực thi.

Chúng tôi sẽ sửa đổi quy trình được lưu trữ ____ 31 & nbsp; để sử dụng câu lệnh

CALL GetCustomerLevel[447, @level]; SELECT @level;

Code language: SQL [Structured Query Language] [sql]
1.

Đầu tiên, hãy bỏ thủ tục lưu trữ

CALL GetCustomerLevel[141, @level]; SELECT @level;

Code language: SQL [Structured Query Language] [sql]
1:

DELIMITER $$ CREATE PROCEDURE GetCustomerLevel[ IN pCustomerNumber INT, OUT pCustomerLevel VARCHAR[20]] BEGIN DECLARE credit DECIMAL[10,2] DEFAULT 0; SELECT creditLimit INTO credit FROM customers WHERE customerNumber = pCustomerNumber; IF credit > 50000 THEN SET pCustomerLevel = 'PLATINUM'; END IF; END$$ DELIMITER ;

Code language: SQL [Structured Query Language] [sql]
0

Sau đó, tạo quy trình được lưu trữ

CALL GetCustomerLevel[141, @level]; SELECT @level;

Code language: SQL [Structured Query Language] [sql]
1 với mã mới:

DELIMITER $$ CREATE PROCEDURE GetCustomerLevel[ IN pCustomerNumber INT, OUT pCustomerLevel VARCHAR[20]] BEGIN DECLARE credit DECIMAL[10,2] DEFAULT 0; SELECT creditLimit INTO credit FROM customers WHERE customerNumber = pCustomerNumber; IF credit > 50000 THEN SET pCustomerLevel = 'PLATINUM'; END IF; END$$ DELIMITER ;

Code language: SQL [Structured Query Language] [sql]
1

Trong quy trình được lưu trữ mới này, chúng tôi bao gồm chi nhánh

DROP PROCEDURE GetCustomerLevel;

Code language: SQL [Structured Query Language] [sql]
8. Nếu

CALL GetCustomerLevel[141, @level]; SELECT @level;

Code language: SQL [Structured Query Language] [sql]
8 không lớn hơn

IF condition THEN statements; ELSE else-statements; END IF;

Code language: SQL [Structured Query Language] [sql]
2, chúng tôi sẽ đặt cấp độ khách hàng thành

DELIMITER $$ CREATE PROCEDURE GetCustomerLevel[ IN pCustomerNumber INT, OUT pCustomerLevel VARCHAR[20]] BEGIN DECLARE credit DECIMAL DEFAULT 0; SELECT creditLimit INTO credit FROM customers WHERE customerNumber = pCustomerNumber; IF credit > 50000 THEN SET pCustomerLevel = 'PLATINUM'; ELSE SET pCustomerLevel = 'NOT PLATINUM'; END IF; END$$ DELIMITER ;

Code language: SQL [Structured Query Language] [sql]
8 trong khối giữa

DROP PROCEDURE GetCustomerLevel;

Code language: SQL [Structured Query Language] [sql]
8 và

SELECT customerNumber, creditLimit FROM customers WHERE creditLimit > 50000 ORDER BY creditLimit DESC;

Code language: SQL [Structured Query Language] [sql]
2.

  • Truy vấn này tìm thấy khách hàng có giới hạn tín dụng nhỏ hơn hoặc bằng

    IF condition THEN statements; ELSE else-statements; END IF;

    Code language: SQL [Structured Query Language] [sql]
    2:
  • Hình ảnh này cho thấy đầu ra một phần:
  • Các câu lệnh sau đây gọi quy trình được lưu trữ cho số khách hàng

    SELECT customerNumber, creditLimit FROM customers WHERE creditLimit 50000 THEN SET pCustomerLevel = 'PLATINUM'; END IF; END$$ DELIMITER ;

    Code language: SQL [Structured Query Language] [sql]
    09.

    Nếu bạn muốn thực thi các câu lệnh một cách có điều kiện dựa trên nhiều điều kiện, bạn sẽ sử dụng câu lệnh

    CALL GetCustomerLevel[447, @level]; SELECT @level;

    Code language: SQL [Structured Query Language] [sql]
    1 sau:

    Trong cú pháp này, nếu

    SELECT customerNumber, creditLimit FROM customers WHERE creditLimit > 50000 ORDER BY creditLimit DESC;

    Code language: SQL [Structured Query Language] [sql]
    3 đánh giá thành

    SELECT customerNumber, creditLimit FROM customers WHERE creditLimit > 50000 ORDER BY creditLimit DESC;

    Code language: SQL [Structured Query Language] [sql]
    4, & nbsp;

    DROP PROCEDURE GetCustomerLevel;

    Code language: SQL [Structured Query Language] [sql]
    6 trong nhánh

    DELIMITER $$ CREATE PROCEDURE GetCustomerLevel[ IN pCustomerNumber INT, OUT pCustomerLevel VARCHAR[20]] BEGIN DECLARE credit DECIMAL[10,2] DEFAULT 0; SELECT creditLimit INTO credit FROM customers WHERE customerNumber = pCustomerNumber; IF credit > 50000 THEN SET pCustomerLevel = 'PLATINUM'; END IF; END$$ DELIMITER ;

    Code language: SQL [Structured Query Language] [sql]
    5 thực thi; Nếu không,

    CALL GetCustomerLevel[447, @level]; SELECT @level;

    Code language: SQL [Structured Query Language] [sql]
    7 tiếp theo được đánh giá.

Làm cách nào để thực hiện một câu lệnh IF trong mysql?

Mysql đơn giản if-then statement..
Đầu tiên, chỉ định một điều kiện để thực thi mã giữa if-then và end if. Nếu điều kiện đánh giá là TRUE, các câu lệnh giữa if-then và end nếu sẽ thực thi. ....
Thứ hai, chỉ định mã sẽ thực thi nếu điều kiện đánh giá là true ..

Làm cách nào để thêm một điều kiện IF trong truy vấn SQL?

Syntax..
If [biểu thức].
- Nếu điều kiện là đúng thì hãy thực hiện câu lệnh sau ..
Tuyên bố thực sự ;.
- Nếu điều kiện là sai thì hãy thực hiện câu lệnh sau ..
Tuyên bố sai ..

MySQL có nếu?

Hàm MySQL if [] được sử dụng để xác thực một điều kiện.Hàm if [] trả về một giá trị nếu điều kiện là đúng và một giá trị khác nếu điều kiện là sai.Hàm MySQL if [] có thể trả về các giá trị có thể là số hoặc chuỗi tùy thuộc vào ngữ cảnh mà hàm được sử dụng.. The IF[] function returns a value if the condition is TRUE and another value if the condition is FALSE. The MySQL IF[] function can return values that can be either numeric or strings depending upon the context in which the function is used.

Tôi có thể sử dụng nếu khác trong truy vấn mysql không?

Mysql nếu khác.Tuy nhiên, nếu [] hàm có thể được sử dụng độc lập với các truy vấn MySQL trực tiếp, MySQL nếu khác được sử dụng như một câu lệnh như một phần của các quy trình hoặc chức năng được lưu trữ.IF[] function can be used independently with MySQL queries directly, however, MySQL IF ELSE is used as a statement as part of the stored procedures or functions.

Bài Viết Liên Quan

Chủ Đề