• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 271
  • Last Modified:

How to get correct data from a query?

HI

I have a table like this named Profiles:

!dMain, IdProfile, Qty
1                17        20
2                17        33
3                18        25
4                18        30
5                17        10
6                17         5

I just want to have the last added record per each IdProfile using SQL, something like this:

!dMain, IdProfile, Qty
4                18        30
6                17          5

Thanks in advance.
0
dimensionav
Asked:
dimensionav
1 Solution
 
QuinnDexCommented:
do you have a timestamp column, if not add one and query against max(timestamp) for each IdProfile
0
 
Jerry_JusticeCommented:
SELECT Last(Profiles.IDMain) AS LastOfIDMain, Profiles.IDProfile, Last(Profiles.Qty) AS LastOfQty
FROM Profiles
GROUP BY Profiles.IDProfile

LastOfIDMain      IDProfile      LastOfQty
     6                          17             5
     4                          18           30

I don't use MySQL, so I am not sure if this syntax would work in MySQL.
0
 
Amar BardoliwalaCommented:
Hello dimensionav,

if idMain is your primary key you can do something like following

SELECT * FROM profiles p1
WHERE
p1.idMain IN(SELECT MAX(p2.idMain) FROM profiles p2 group by p2.idProfile);

Hope this will help you.

Thank you.

Amar Bardoliwala
0
 
dimensionavAuthor Commented:
Guys, this is a new situation based on this question, maybe you could be interested:
http://www.experts-exchange.com/Programming/Languages/SQL_Syntax/Q_28325810.html
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Get your problem seen by more experts

Be seen. Boost your question’s priority for more expert views and faster solutions

Tackle projects and never again get stuck behind a technical roadblock.
Join Now