Hướng dẫn can you use if statements in mysql? - bạn có thể sử dụng câu lệnh if trong mysql không?

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:

Hướng dẫn can you use if statements in mysql? - bạn có thể sử dụng câu lệnh if trong mysql không?

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:

Hướng dẫn can you use if statements in mysql? - bạn có thể sử dụng câu lệnh if trong mysql không?

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.
Hướng dẫn can you use if statements in mysql? - bạn có thể sử dụng câu lệnh if trong mysql không?

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)

Hình ảnh này cho thấy đầu ra một phần:

Hướng dẫn can you use if statements in mysql? - bạn có thể sử dụng câu lệnh if trong mysql không?

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 ORDER BY creditLimit DESC;

Code language: SQL (Structured Query Language) (sql)
2 & nbsp; 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(447, @level); SELECT @level;

Code language: SQL (Structured Query Language) (sql)
Giới hạn tín dụng của khách hàng

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

Code language: SQL (Structured Query Language) (sql)
2 nhỏ hơn

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

Code language: SQL (Structured Query Language) (sql)
2, do đó, tuyên bố trong chi nhánh

DROP PROCEDURE GetCustomerLevel;

Code language: SQL (Structured Query Language) (sql)
8 thực thi và đặt 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 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.
Hướng dẫn can you use if statements in mysql? - bạn có thể sử dụng câu lệnh if trong mysql không?

The credit limit of the customer

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

Code language: SQL (Structured Query Language) (sql)
2 is less than

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

Code language: SQL (Structured Query Language) (sql)
2, therefore, the statement in the

DROP PROCEDURE GetCustomerLevel;

Code language: SQL (Structured Query Language) (sql)
8 branch executes and sets the value of the

CALL GetCustomerLevel(141, @level); SELECT @level;

Code language: SQL (Structured Query Language) (sql)
9 parameter

CALL GetCustomerLevel(141, @level); SELECT @level;

Code language: SQL (Structured Query Language) (sql)
4 to

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.

Tuyên bố MySQL CALL GetCustomerLevel(447, @level); SELECT @level;Code language: SQL (Structured Query Language) (sql)1

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:

IF condition THEN statements; ELSEIF elseif-condition THEN elseif-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, & 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 ORDER BY creditLimit DESC;

    Code language: SQL (Structured Query Language) (sql)
    2 & nbsp; 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(447, @level); SELECT @level;

Code language: SQL (Structured Query Language) (sql)
Giới hạn tín dụng của khách hàng

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

Code language: SQL (Structured Query Language) (sql)
2 nhỏ hơn

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

Code language: SQL (Structured Query Language) (sql)
2, do đó, tuyên bố trong chi nhánh

DROP PROCEDURE GetCustomerLevel;

Code language: SQL (Structured Query Language) (sql)
8 thực thi và đặt 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 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.

Tuyên bố MySQL

CALL GetCustomerLevel(447, @level); SELECT @level;

Code language: SQL (Structured Query Language) (sql)
1
Hướng dẫn can you use if statements in mysql? - bạn có thể sử dụng câu lệnh if trong mysql không?

If you test the stored procedure with the customer that has a credit limit of 10000 or less, you will get the output as

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)
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:

Hướng dẫn này có hữu ích không?

Làm cách nào để thực hiện câu lệnh IF trong truy vấn 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 ..

Tôi có thể sử dụng nếu điều kiện trong truy vấn SQL không?

Chúng ta có thể sử dụng câu lệnh SQL nếu không có khác.Sau đây, biểu thức đánh giá là đúng;Do đó, nó in tin nhắn.Nếu biểu thức đánh giá sai, nó không trả về bất kỳ đầu ra nào.Chúng ta nên sử dụng câu lệnh khác để nếu đánh giá không đúng, chúng ta có thể đặt đầu ra mặc định.. In the following, the expression evaluates to TRUE; therefore, it prints the message. If the expression evaluates to FALSE, it does not return any output. We should use ELSE statement so that if an evaluation is not TRUE, we can set default output.

Chúng ta có thể sử dụng hoặc điều kiện trong MySQL không?

MySQL và, hoặc không phải người vận hành, các toán tử và hoặc các toán tử được sử dụng để lọc các bản ghi dựa trên nhiều điều kiện: toán tử và toán tử hiển thị một bản ghi nếu tất cả các điều kiện được phân tách bằng và đúng.Toán tử Hiển thị một bản ghi nếu bất kỳ điều kiện nào được phân tách bằng hoặc đúng.The OR operator displays a record if any of the conditions separated by OR is TRUE.