如何从表中获取通知给会话用户

Posted

技术标签:

【中文标题】如何从表中获取通知给会话用户【英文标题】:How to fetch notifications from a table to session users 【发布时间】:2021-07-14 08:00:46 【问题描述】:

我有一个项目,我将所有记录提交给notification table,现在我想根据session_id的活动来获取

详情:我的项目是问答问答平台,我在我的数据库中为每个活动单独设置了tables。例如,questionsanswersquestion-upvoteanswers-likecommentscomments-like 等。我还有一个table 用于notifications,其中存在7 - ColumnsiddatebyUser_idsource_idalertsource_typestatus

通知结构 - 附加图片:

现在在notifications表中插入记录后,我想根据session_id的内容获取记录(如果有人喜欢session_id的答案,如何获取?这是我的问题。

尝试查询:

SELECT id,byUser_id,source_id,alert,source_type
FROM `qa-notifications`
FULL JOIN `qa-questions` `qa-notifications`.`source_id` = `qa-questions`.`id`
WHERE `qa-question`.`user_id` = '".$_SESSION['id']."'";

【问题讨论】:

听起来你在问如何写一个SQL查询来返回你需要的结果;如果是这样,您应该以文本格式发布 SQL 表架构/定义。 【参考方案1】:

无论如何,我不是专家,但我正在努力思考。

如果我理解正确,您想获取最后完成的操作(喜欢、回复等)

在这种情况下,您需要选择通知表中的最后一行:

SELECT * FROM Table ORDER BY ID DESC LIMIT 1 (How to select the last record of a table in SQL?) 从那里开始,使用 JOIN 从其他表中获取数据。

再一次,这个案例没有专家,帖子旨在帮助您解决问题。

【讨论】:

以上是关于如何从表中获取通知给会话用户的主要内容,如果未能解决你的问题,请参考以下文章

将会话用户值传递给过程

查询从会话表中获取高峰时段

如何将 Django 频道会话分配给 ORM 中的对象?

Rails 如何知道何时从 `sessions` 表中删除记录?

如何查找特定用户的 django 会话?

播放框架中的会话处理