主题:  怎样实现这样的sql查询?

aSir

职务:普通成员
等级:1
金币:0.0
发贴:78
#12002/5/11 18:43:52
--------------------------------------------------------------------------------
有一个新闻系统,一张news表,一张pinglun(评论)表,以新闻ID建立关系,并都有updatetime日期型字段,现在要在一页中把两表中的最新发表的n篇取出,并一起按两者的加入日期排序。也就是形成这样的表格:
最新新闻: id 新闻标题 加入时间2002-5-11
最新新闻: id 新闻标题 加入时间2002-5-10
最新评论: id 评论标题 加入时间2002-5-9
最新新闻: id 新闻标题 加入时间2002-5-8
最新评论: id 评论标题 加入时间2002-5-7

还有第一列新闻和评论是怎样判断出来(来自news表则为新闻,来自pinglun表为评论)?

急待回答,谢





暴雨

职务:普通成员
等级:1
金币:1.0
发贴:178
#22002/5/11 23:29:19
你用的是什么数据库,支持联合查询吗?



aSir

职务:普通成员
等级:1
金币:0.0
发贴:78
#32002/5/12 0:00:27
access2000, 应该可以吧



aSir

职务:普通成员
等级:1
金币:0.0
发贴:78
#42002/5/12 11:36:41
呵呵,已经解决了



暴雨

职务:普通成员
等级:1
金币:1.0
发贴:178
#52002/5/12 13:05:53
介绍一下思路。



5D荣誉斑竹

职务:普通成员
等级:3
金币:10.0
发贴:1480
#62002/5/12 13:29:34
ACCESS有视图,或者把2表合并一表,
但合并的方式表结构不太合理。



5D荣誉斑竹

职务:普通成员
等级:2
金币:1.0
发贴:320
#72002/5/12 14:38:55
建立和视图啊。用联合主键。



zjaSir

职务:普通成员
等级:1
金币:0.0
发贴:3
#82002/5/12 16:53:46
很巧,用了联合查询和嵌套查询
SELECT TOP 10 *
FROM (SELECT newsid, title, updatetime, 'news' AS type
FROM news
UNION
SELECT newsid, title, updatetime, 'pinglun' FROM pinglun) ORDER BY updatetime desc
各位看看,有了这,就可以简化许多操作了。

以上查询在sql和access2000下均测试通过

编辑历史:[这消息被zjaSir编辑过(编辑时间2002-05-12 16:55:02)]


zjaSir

职务:普通成员
等级:1
金币:0.0
发贴:3
#92002/5/12 16:56:02
天,原来我在这有两个名字,呵呵……