收录日期:2018/08/16 06:38:06 时间:2016/05/20 18:27:26 标签:基础类
如下一个表。
id  form  to  time body title  reid rootid read delOfform  delOfTo
1 name1 name2 1:00 xxx   xxx    0     0      1      0        0
2 name2 name1 1:10 xxx  re:xxx  1     1      0      0        0

是一个论坛短消息的表,我想在用户察看段消息的时后可以看到自己发送的那条。
所以在表中定义了Reid字段。表示这个消息是恢复与某个id的消息的。

如上表。就是name1先给name2发送了一条xxx标题的短消息。。然后name2阅读后回复了一条Re:xxx的消息。

当name1看name2给他的回复时希望可以看见自己给name2的原贴。
所以,当查询数据库的时后,希望可以把两条数据查询出来~如何做?(reid是回复的id号,应该是更具这个来做关联查询把?)

select a.*, b.* from 表 a 
  left join 表 b on a.reid=b.id and a.from=b.to and a.to=b.from
select * from 表 where id=@参数 or id=(select redi from 表 where id=@参数)