[英]If statement shorthand syntax in MYSQL store procedure
CREATE PROCEDURE `new_procedure`()
BEGIN
INSERT IGNORE INTO users ( group_id, username, password, email)
SELECT status, CONCAT(first_name, last_name), password, email FROM another_user;
END
这是一个示例,我想将状态从another_user直接写入用户的group_id中。
如果还有其他速记语法,还有什么方法可以像Java一样吗? 如果可以的话会是这样的:
SELECT (status==1?4,5), CONCAT(first_name, last_name), password, email FROM another_user;
这是IF
函数:
SELECT IF(status = 1, 4, 5), CONCAT(first_name, last_name), password, email
FROM another_user;
您还可以使用标准的SQL CASE
表达式:
SELECT CASE status
WHEN 1 THEN 4
ELSE 5
END,
CONCAT(first_name, last_name), password, email
FROM another_user;
这不是存储过程特有的,它只是SQL表达式的一般功能,您可以在任何地方使用它。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.