Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/75.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用SQL[类似facebook的聊天]检查新消息_Sql - Fatal编程技术网

使用SQL[类似facebook的聊天]检查新消息

使用SQL[类似facebook的聊天]检查新消息,sql,Sql,我目前正在为我的网站开发一个类似facebook的聊天工具。现在我问自己,检查新消息的最佳方式(最佳sql查询)是什么? 我的桌子是这样的: 消息 messageID | userID | roomID | message | time ----------------------------------------------------------- 4 | 1 | 1 | test | 1369062603

我目前正在为我的网站开发一个类似facebook的聊天工具。现在我问自己,检查新消息的最佳方式(最佳sql查询)是什么? 我的桌子是这样的:

消息

messageID   | userID    | roomID    | message   | time
-----------------------------------------------------------
 4          | 1         | 1         | test      | 1369062603 
 9          | 2         | 1         | great     | 1369062609
房间

roomID  | host  | createTime
-----------------------------
 1      | 1     | 1369062600
房间到用户

roomID  | userID 
----------------
 1      | 1     
 1      | 2     
我计划添加群聊,这就是为什么我不想在我的消息表中添加一个单独的创建read列。 我的下一次尝试将是一个按时间列过滤的sql查询

你打算怎么做?谢谢

这样行吗

Select m.*
From messages m join rooms r on m.roomID = r.roomID
    join room_to_user ru on r.roomID = ru.roomID
where ru.userID = @userID and m.time > @timeSinceLastRead

您没有指定正在使用的SQL(SQL Server?Oracle?MySql?),您可能需要在m.time中使用该格式。

请提供一个具体的技术问题。问题是如何在没有read列的情况下检查新邮件。