骗中骗2与骗中骗的关系:SQL语句 查询中的难题

来源:百度文库 编辑:中科新闻网 时间:2024/05/06 01:01:08
SQL语句查询中遇到一个难题....
如下:

表一
id book
1 杂志01
2 杂志02
3 杂志03

表二
nid book num date(varchar)
1 杂志01 第1期 2006-01-06
2 杂志01 第2期 2006-01-06
3 杂志02 第1期 2006-02-06
4 杂志01 第3期 2006-02-06
5 杂志03 第1期 2006-03-06
5 杂志02 第2期 2006-03-06

我想用SQL的查询语句实现以下结果

nid book num date
1 杂志01 第3期 2006-02-06
2 杂志02 第2期 2006-03-06
3 杂志03 第1期 2006-03-06

就是显示每种杂志最新一期的ID(期刊的更新日期有可能一样)

哪位高手能帮帮忙~告诉我该怎么写
因为表一还有其它数值要取,所以需要双表关联

......

如果不用双表关联的话,其实一张表就足够了:
select nid,book,num,data from 表二
where data > '2006-02-06'

select nid,book,num,date
from table2
where date = (select top 1 date from table2 order by date)

select a.id,a.book,b.num,max(b.date) as date from 表一 a,表二 b where a.book=b.book