问个有点复杂的SQL
表1:tpinfo(id,名字,...) 
 从表:tpelse(id,级别,工资,时间) 
 第一个表就不说了,第二个表描述一下.记录一个人的工资变化 
 记录形式如:    
 id,级别,工资,时间 
 100,6,300,2000-1-1 
 100,5,320,2000-8-1 
 100,4,360,2002-11-1 
 101,3,400,1999-4-1 
 101,5,320,2000-2-1 
 101,2,560,2002-11-1 
 ..... 
 我要查询出所有人员在某个时间的级别及工资怎么写更简单高效呢?注意那个时间哦.
------解决方案--------------------没有明白。!
------解决方案--------------------select b.ID,a.Name,b.级别,b.工资,b,时间 from tpinfo a ,tpelse b where a.ID=b.ID And b.时间 between  '2000-1-1 ' and  '2000-8-1 '
------解决方案----------------------取小于或等于指定日期的最大时间 
 select * from tpelse a join (select max(时间) 时间 from tpelse where 时间 <=@dt group by id)b on a.时间=b.时间
我的异常网推荐解决方案:软件开发者薪资,http://www.aiyiweb.com/other/1391128.html