2
Id  Project_Id       Activity_Time        Username
1      100        2008-01-01 11:12:13         A
2      100        2008-01-01 00:00:00         B
3      500        2008-02-01 00:00:00         C
4      300        2008-02-03 00:00:00         D
5      500        2008-03-03 11:11:11         A
6      300        2008-04-04 00:00:00         D
7      500        2008-05-05 00:00:00         C
8      200        2008-06-06 00:00:00         D
9      100        2009-01-01 11:12:13         A
10     300        2010-01-01 01:02:03         A

What is the sql query to select Project_Id based on following input :

  1. for the given username
  2. order by Activity_Time - latest first
  3. distinct Project_Id
  4. only 10 rows

I tried few queries nothing worked, so seeking help here. Currently H2 database is used but it would change over a period.

[Update] This is a true project requirement, not a home work, am a newbie, please don't make fun, am learning the stuffs.

Maniganda Prakash
  • 4,702
  • 8
  • 34
  • 42

1 Answers1

8

This should be a good start if not completely working ...

SELECT TOP 10 
    project_ID, max(activity_time) as activity_time
FROM
    table_name
WHERE
    username = usernameVariable
GROUP BY 
    project_id
ORDER BY 
    activity_time DESC
Gabriele Petrioli
  • 191,379
  • 34
  • 261
  • 317