Click to See Complete Forum and Search --> : How to solve this SQL Query


m2hari
09-04-2003, 04:47 AM
select * from ST_Mas_IncentiveFac


Inc_Code Inc_Date Division_Code Ass_Target
---------- -------------- ----------------- -------------
1 2003-02-09 1 76.0
2 2003-09-22 1 87.0
3 2003-09-02 2 86.0
4 2003-09-23 3 78.0
5 2003-09-02 1 87.0
6 2003-09-02 1 87.0
7 2003-09-02 1 87.0
8 2003-09-02 2 88.0
10 2003-09-02 3 99.0
11 2003-09-02 3 99.0

(10 row(s) affected)


My Query is
**********
select MIF2.Inc_Code,MIF2.Division_Code,MIF2.Inc_Date,MIF2.Ass_Target FROM ST_Mas_IncentiveFac MIF2,
(SELECT MIF1.Division_Code,MAX(MIF1.Inc_Date) as IncDate from ST_Mas_IncentiveFac MIF1
group by MIF1.Division_Code)ns1
WHERE MIF2.Division_Code=ns1.Division_Code
AND MIF2.Inc_Date =ns1.IncDate
order by MIF2.Division_Code,MIF2.Inc_Code desc

Result
******

Inc_Code Division_Code Inc_Date Ass_Target
---------- ------------- --------------------------- ------------
2 1 2003-09-22 00:00:00.000 87.0
8 2 2003-09-02 00:00:00.000 88.0
3 2 2003-09-02 00:00:00.000 86.0
4 3 2003-09-23 00:00:00.000 78.0

(4 row(s) affected)


Requirement is

I need only the Inc_Code's of 2,8,4 and not the 3 of the Division_Code 2