这样的子查询怎么写..请教?
IC_BH IC_NAME DATETIME PRICE IC_PH
BJB003 一号大仓 2005-06-01 00:00:00 20000.000000 200505300002
BJB001 一号大仓 2005-06-02 00:00:00 10000.000000 200505300002
BJB003 二号大仓 2005-05-30 00:00:00 15000.000000 200505300004
BJB001 一号大仓 2005-05-30 00:00:00 10000.000000 200505300002
BJB003 二号大仓 2005-05-30 00:00:00 25000.000000 200505300005
BJB003 三号大仓 2005-05-30 00:00:00 28000.000000 200505300006
BJB003 三号大仓 2005-05-30 00:00:00 20000.000000 200505300007
我想求在同一IC_BH,IC_NAME,DATETIME,下的最新PRICE.也就是:
IC_BH IC_NAME DATETIME PRICE
BJB003 一号大仓 2005-06-01 00:00:00 20000.000000
BJB001 一号大仓 2005-06-02 00:00:00 10000.000000
BJB003 二号大仓 2005-05-30 00:00:00 25000.000000
BJB001 一号大仓 2005-05-30 00:00:00 10000.000000
BJB003 三号大仓 2005-05-30 00:00:00 20000.000000
问题点数:20、回复次数:6Top
1 楼WangZWang(先来)回复于 2005-06-04 12:01:22 得分 0
select IC_BH,IC_NAME,max(DATETIME) as DATETIME,PRICE
from 表
group by IC_BH,IC_NAME,PRICETop
2 楼WangZWang(先来)回复于 2005-06-04 12:03:23 得分 0
--应为这个
select IC_BH,IC_NAME,DATETIME,PRICE,max(IC_PH) as IC_PH
from 表
group by IC_BH,IC_NAME,DATETIME,PRICE
Top
3 楼filebat(Mark)回复于 2005-06-04 12:06:39 得分 0
to 楼主:同一IC_BH,IC_NAME,DATETIME下,哪个price什么叫做最新price?什么标准?
to 阿来:好像应该以IC_BH,IC_NAME,DATETIME分组才对吧。Top
4 楼filebat(Mark)回复于 2005-06-04 12:14:00 得分 20
select t1.IC_BH, t1.IC_NAME, t1.DATETIME, t1.PRICE
from 表名 as t1,(select IC_BH,IC_NAME,DATETIME,max(IC_PH) as IC_PH
from 表名
group by IC_BH,IC_NAME,DATETIME) t2
where t1.IC_Bh=t2.IC_BH
and t1.IC_NAME=t2.IC_NAME
and t1.DATETIME=t2.DATETIME
and t1.IC_PH=t2.IC_PHTop
5 楼lwinner()回复于 2005-06-04 12:40:22 得分 0
谢谢..
以IC_PH为标准..
显示出的应该是5条记录呀..而你这样做的结果为7条记录..与原来是一样的..
我要的结果是同一IC_BH,IC_NAME,DATETIME下只显示一记录.而且是最新的price
Top
6 楼lwinner()回复于 2005-06-04 12:41:20 得分 0
to 阿来:你这样的做法好像不行哦!Top




