Author |
Topic |
A_dil88
Starting Member
5 Posts |
Posted - 2012-12-11 : 15:22:09
|
Hi Guys, Here is my sample Data,Create Table Test1(ID INT,DATE DATETIME,PID INT)INSERT INTO Test1values('1','2006-07-12 00:00:00.000','594820')GOINSERT INTO Test1values('2','2007-07-12 00:00:00.000','594820')GOINSERT INTO Test1values('3','2008-07-12 00:00:00.000','594820')GOINSERT INTO Test1values('4','2012-07-12 00:00:00.000','594820')GOSELECTid,MAX(date),pid FROM test1GROUP BY id,pidResult = ID,date,pid 4 2012-07-12 594820I want Max date with id and pid. Thanks in advance.. |
|
sodeep
Master Smack Fu Yak Hacker
7174 Posts |
Posted - 2012-12-11 : 15:32:58
|
[code]SELECT MAx(id),pid,MAX(date)FROM test1GROUP BY pid[/code]OrIf you ID is not identity column[code]Select i.* from Test1 iinner join(Select PID,MAX(Date)MAXDate from Test1 Group by PID)P on P.PID = i.PID and P.MAXDate = i.Date[/code] |
|
|
A_dil88
Starting Member
5 Posts |
Posted - 2012-12-11 : 16:53:14
|
Sodeep, Thank you for your Reply. Your Solution is working for Sample data that i provided, but not in my original Database. I have Distince ID,max(Date),Duplicate(Pid)I want Latest PID with Max(Date)For Example (Sample Data Below)ID,DATE,PID1,12/10/2011,1232,10/10/2011,1233,12/10/2012,456End Result Should beID,DATE,PID1,12/10/2011,1233,12/10/2012,456ID (IS NOT IN SEQUENCE).Thank You, |
|
|
sodeep
Master Smack Fu Yak Hacker
7174 Posts |
Posted - 2012-12-11 : 17:19:13
|
Even other query should workSelect * from(Select *,ROW_NUMBER()OVER(PARTITION BY PID ORDER BY DATE desc) Seqfrom Test1)PWhere P.Seq = 1 |
|
|
A_dil88
Starting Member
5 Posts |
Posted - 2012-12-11 : 19:07:19
|
Thank You for Your Reply. This Question is Answered. See above Sodeep last Comments..Thank You. |
|
|
|
|
|