gpt4 book ai didi

MySQL IF...THEN 后跟查询语句

转载 作者:太空宇宙 更新时间:2023-11-03 11:14:51 24 4
gpt4 key购买 nike

像这样的东西在 MySQL 中是否有效:

DELIMITER //
CREATE FUNCTION LOGIN_VALIDATE(IN uName VARCHAR(32),IN uPass VARCHAR(32))
RETURNS BOOLEAN
BEGIN
DECLARE row_count BOOLEAN DEFAULT 0;
DECLARE stored_pass VARCHAR(32) DEFAULT NULL;
DECLARE valid_return BOOLEAN DEFAULT 0;
SELECT count(*) INTO row_count FROM Login WHERE userId='uName';
IF row_count = 1 THEN
SELECT pWord INTO stored_pass FROM Login WHERE userId='uName';
END IF;
IF stored_pass = 'uPass' THEN
SET valid_return = 1;
END IF;
RETURN valid_return;
END //
DELIMITER ;

最佳答案

使用:

DECLARE valid_return BOOLEAN DEFAULT 0;

SELECT CASE WHEN COUNT(*) = 1 THEN 1 ELSE 0 END
INTO valid_return
FROM LOGIN l
WHERE l.userid = @uName
AND l.pword = @uPass

始终尽量减少通过表格的次数以获得您想要的结果。 SQL 是基于 SET 的,而不是过程性的 - 如果正确处理 SQL,它会更好地为您工作。

关于MySQL IF...THEN 后跟查询语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5752972/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com