我有两个表-客户和客户历史。
CLIENTS:
cID | last_seen (LAST_SEEN is updated every 2 mins by my application)
CLIENT_HISTORY :
ID | cID | left_left | time_arrived
我想:
记录客户的来来往往。因此,当clients.last\u seen超过5分钟时,将记录插入到client\u历史记录中,并使用cid和clients.last\u seen值。
我想要这样的东西:
BEGIN
IF (-- something here is true)
THEN
INSERT INTO client_history
SET
cID=old.cID,
last_seen=old.last_seen;
ELSEIF (-- something here is true)
THEN
INSERT INTO client_history
SET
time_arrived=old.last_seen
END IF;
END
我一直在考虑使用
IF (TIMESTAMPDIFF(MINUTE,c.last_seen,NOW()) > 5) for the first IF condition.
我对触发器还不熟悉,我不知道我的逻辑是否正确,或者是否有更简单或更好的方法。我想知道是否可以引入一个标志列来指示客户机离开或类似的情况。
1条答案
按热度按时间vh0rcniy1#
这也许能帮你弄到。
我想用
NEW.last_seen
逻辑中的值而不是NOW()
功能。