Search code examples
javasqloracle-databasehql

Select the first duplicated element


I have 2 Classes in JAVA ( MODEL1 && MODEL2 ) As you can see here :

MODEL1_ID   ACTN_DTE   MODEL2_ID    
---------- --------- --------------
         1 14/11/19  18         
      1000 14/11/19  4
      1001 14/11/19  19
      1002 14/11/19  4
      1003 14/11/19  4
      1004 14/11/19  18
      2000 14/11/19  5

I am trying to find a way with SQL Or HQL to get all elements from MODEL1 that have a list of MODEL2_ID , get only the first (min MODEL1_ID) MODEL1 per MODEL2_ID ( in case if it's duplucated ).

Exemple : Input : MODEL2_ID in (18,4,19,5)

MODEL1_ID   ACTN_DTE   MODEL2_ID    
---------- --------- --------------
         1 14/11/19  18         
      1000 14/11/19  4
      1001 14/11/19  19
      2000 14/11/19  5

Solution

  • select MIN(MODEL1_ID) FROM table GROUP BY (MODEL2_ID)