gpt4 book ai didi

php - 使用另一个 COUNT 更新 MySQL 表

转载 作者:行者123 更新时间:2023-11-29 04:13:28 26 4
gpt4 key购买 nike

我正在尝试使用另一个表 Videos 中的 COUNT 更新表 Profiles 中的列。所有视频都存储在 Videos 表中,我想在 Profiles 中创建一个名为 VideoCount 的列,它显示该用户的视频数量Videos 表。

基本上,我想运行一个 cron 作业 - 所以我需要知道如何在 Videos 表中找到用户视频的数量,然后更新该用户的 VideoCountProfiles 中使用此计数。

要识别谁上传了哪个视频,Videos.OwnerProfiles.ID 应该匹配.有人知道我需要为 PHP 文件 cron 作业运行的 SQL 吗?

最佳答案

UPDATE Profiles
SET VideoCount = (
SELECT COUNT(*)
FROM Videos
WHERE Videos.Owner = Profiles.ID);

越简单越好^^

如果您想要它:您可能需要的所有触发器:

DELIMITER //

CREATE TRIGGER increaseVideoCount AFTER INSERT ON Videos
FOR EACH ROW BEGIN
UPDATE Profiles SET VideoCount = VideoCount + 1 WHERE ID = NEW.Owner;
END;
//

CREATE TRIGGER decreaseVideoCount AFTER DELETE ON Videos
FOR EACH ROW BEGIN
UPDATE Profiles SET VideoCount = VideoCount - 1 WHERE ID = OLD.Owner;
END;
//

CREATE TRIGGER checkVideoCount AFTER UPDATE ON Videos
FOR EACH ROW BEGIN
IF OLD.Owner <> NEW.Owner THEN
UPDATE Profiles SET VideoCount = VideoCount + 1 WHERE ID = NEW.Owner;
UPDATE Profiles SET VideoCount = VideoCount - 1 WHERE ID = OLD.Owner;
END IF;
END;
//

DELIMITER ;

关于php - 使用另一个 COUNT 更新 MySQL 表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4314952/

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