gpt4 book ai didi

Mysql存储过程搜索

转载 作者:行者123 更新时间:2023-11-29 00:23:04 25 4
gpt4 key购买 nike

我试图创建一个存储过程,它将通过匹配名字和姓氏来搜索 users 表,但我的存储过程仅在我仅按姓氏搜索时才有效。谁能明白为什么

DELIMITER $$

CREATE DEFINER=`root`@`localhost` PROCEDURE `SearchUserByName`(
IN in_first_name VARCHAR(100),
IN in_last_name VARCHAR(100)
)
BEGIN
SELECT *
FROM `users`
WHERE in_first_name AND in_last_name = first_name AND last_name;
END

最佳答案

你有一个非常奇怪的 where 子句......

将其更改为:

WHERE ((in_first_name = '') or (first_name = in_first_name))
AND ((in_last_name = '') or (last_name = in_last_name))

如果您为名字或姓氏传递一个空格,则子句的那部分将被忽略。这允许您按第一个或最后一个或两者进行搜索。

关于Mysql存储过程搜索,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20341634/

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