2012-02-15 99 views
0

你好,我需要这个查询的一些帮助。我试图使用他们的用户ID选择属于两个用户的所有消息。我想返回一个变量来知道CurrentUserId是每个消息的接收者还是发送者。Sql Select Issue


表结构:

表名:消息

列名:

  • SenderUserId(该谁发送消息的用户的ID号)
  • ReceiverUserId(用户的消息Id的消息e为发送到)
  • 消息(保存消息)
  • SentDate(当被发送的消息)预期输出的

实施例:

消息---- ----------------------- SentDate ------------------------ ------ FromMe


Hello User -------------------------- 23:45,16/2/2012 ---------- ------------真正----


查询现在:

SELECT Message, SentDate FROM Messages 
WHERE [email protected] AND [email protected] 
OR [email protected] AND [email protected] 

所以我基本上想要做的是,我要回所有这些用户发送给对方的消息,如果@CurrentUser是每个消息的Receiver的发送者,我也想知道一个布尔值。如果消息是从@CurrentUser发送的,则为true;如果消息是由@OtherUser发送的,则为False。 谢谢

回答

0

如果您不需要使用存储过程从SQL获取数据我会建议得到你需要的数据,然后在做代码begind所有必要的检查。通过这样做,你所有的规则和计算都将在1个地方(BLL理想)。

希望它有帮助。