首页 > 解决方案 > 尝试创建计算朋友的功能时出错

问题描述

错误:将 SQL 脚本应用到数据库时出错。代码:

USE `my_first_db`;
DROP function IF EXISTS `show_users_firends_count`;

DELIMITER $$
USE `my_first_db`$$
CREATE FUNCTION `show_users_firends_count` (ff int)
RETURNS int(11)
BEGIN
Select
  count(user_friend.user_id + user_friend.friend_id)
From
  user_friend
Where
  user_friend.user_id = ff;
END$$

DELIMITER ;

标签: mysqlsql

解决方案


你几乎是对的。

A 函数 ahs 会返回一些东西,以便您将计数发回。

无论如何,您都应该检查查询。你的计数看起来不对。因为您添加了 useid 和 freind_id 并计算,这是错误的。所以检查查询并更改它。它现在计算所有连接到 user_id 的friends_id

DROP function IF EXISTS `show_users_friends_count`;

DELIMITER $$
CREATE FUNCTION `show_users_friends_count` (ff int)
RETURNS int
DETERMINISTIC
BEGIN
Select
  count(user_friend.friend_id) INTO @count
From
  user_friend
Where
  user_friend.user_id = ff;
RETURN @count;
END$$

DELIMITER ;

推荐阅读