【散50分求一SQL语句】【双表联查】【闪电结贴】
A 表(新闻表):[编号,标题,内容]
B 表(评论表):[编号,PID,内容,时间] 注:PID 对应A表的编号
现求最新评论新闻,按评论时间降序排列
[解决办法]
select *
from a
order by (select max(时间) from b where b.pid=a.编号) desc
[解决办法]
select top 1 A.标题,B.时间
from A,B
where A.编号 = B.PID
order by B.时间 desc
[解决办法]
select a.* from A,(select max(时间) 时间,编号 from B group by 编号) b where a.编号=b.编号 order by b.时间 desc
[解决办法]
select A.标题,A.内容
from A inner join B ON A.编号=B.PID
ORDER BY B.时间
[解决办法]
闪电回复~~哈哈
[解决办法]
select a.* from A,(select max(时间) 时间,PID from B group by 编号) b where a.编号=b.PID order by b.时间 desc --PID 对应A表的编号,改一下
[解决办法]
select a.编号,a.标题,a.内容,b.时间 from A a
left outer join B b
on a.编号=b.PID
order by b.时间 desc
[解决办法]
select a.编号,a.标题,a.内容,bb.时间 from a, (select distinct top 10 pid,时间 from b order by 时间 desc) bb
where a.编号 = bb.pid
[解决办法]
闪电接分,楼主就给点吧@@@@@@@@@
[解决办法]
接點分
[解决办法]
create table a --新闻表
(
PID char(6) not null PRIMARY KEY, --编号
Title varchar(50) ,--标题
Content varchar(100) --内容
)
create table b--评论表
(
IID char(6) not null PRIMARY KEY,--编号
PID char(6),--PID
Content varchar(100),--内容
PTime datetime --时间
)
insert into a
select '060801 ', 'IT新型工程 ', '据国外媒体报道....... '
union all
select '060802 ', '内幕调查 ', '《世界新闻报》记者在网站上.... '
union all
select '060803 ', 'CSDN专访 ', ' 波折路上的坚持行进者... '
union all
select '060804 ', '我们为什么要睡眠? ', '我们为什么要睡眠?........ '
insert into b
select 'P60808 ', '060802 ', '评:内幕调查 ', '2007-06-08 11:00:00 '
union all
select 'P60802 ', '060801 ', '评:IT新型工程 ', '2007-06-08 07:00:00 '
union all
select 'P30909 ', '060804 ', '评:我们为什么要睡眠 ', '2007-03-09 11:21:00 '
union all
select 'P60809 ', '060801 ', '再评:IT新型工程 ', '2007-06-08 17:00:00 '
select * from a
where pid in(select PID from b )
order by (select max(ptime) from b where b.pid=a.pid) desc
drop table a
drop table b