首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

请大家帮忙优化一条sql语句,合并查询解决方案

2012-03-28 
请大家帮忙优化一条sql语句,合并查询COMP表里存着所有用户的注册信息COMP_PIC表里存着所有用户的展示图片

请大家帮忙优化一条sql语句,合并查询


COMP表里存着所有用户的注册信息
COMP_PIC表里存着所有用户的展示图片

我现在想把COMP_PIC表里TID值最高的那张图片调出来做LOGO

select   ID,NID,SID,SNAME,(select   top   1   PICFILE   from   COMP_PIC   where   SID=COMP.ID   order   by   TID   desc)   as   LOGO   from   COMP   where   VID> 0   and   VID <6   order   by   YID   desc

效果能实现,可是速度挺慢的,能在不改变现有数据库结构的情况下优化一下嘛?

[解决办法]
在COMP上VID,YID comp_pic的TID列上建索引试试吧。
[解决办法]
select m.* , n.* from COMP m,
(select a.* from comp_pic a,
(select sid , max(tid) tid from COMP_PIC) b
where a.sid = b.sid and a.tid = b.tid) n
where m.id = n.sid

热点排行