Just nu i M3-nätverket
Gå till innehåll
Nigge

Ta fram de 20 raderna där ett namn förekommer oftast FIREBIRD

Rekommendera Poster

Tjena, det står fullständigt stilla här, ett inlägg här brukar oftast få snabba och bra svar så jag gör ett försök.

 

Jag har en SQL-Query som ser ut såhär:

 SELECT COMPANIES.COMPANY_NAME, PO_HEADER.PO_NUMBER, PO_HEADER.ENTRY_DATE
 FROM   PO_HEADER INNER JOIN COMPANIES ON PO_HEADER.CMP_AUTO_KEY=COMPANIES.CMP_AUTO_KEY
 WHERE  PO_HEADER.ENTRY_DATE BETWEEN '2012-01-01' AND '2013-12-31'
 ORDER BY COMPANIES.COMPANY_NAME

 

Det den gör idag är att den tar fram alla företag som vi har gjort inköp hos inom tidsramen 2012-01-01 och 2013-12-31

Det jag dock vill att den gör är att den ENDAST visar "topp 20" av företagsnamnen som förekommer

Alltså, jag vill visa de 20 företag vi köpt från flest gånger under denna tidsperiod.

 

 

Dela detta inlägg


Länk till inlägg
Dela på andra webbplatser
SELECT TOP 20 ...
 
Notera dock: 

 

Use caution when specifying the TOP clause in a query that contains a UNION, UNION ALL, EXCEPT, or INTERSECT operator. It is possible to write a query that returns unexpected results because the order in which the TOP and ORDER BY clauses are logically processed is not always intuitive when these operators are used in a select operation.

 

Dela detta inlägg


Länk till inlägg
Dela på andra webbplatser

Problemet är att TOP 20 inte fungerar, man får göra en FIRST 20 i Firebird.

Problemet är dock att då tar den första 20 raderna oavsett, jag behöver alltså sortera dem efter antalet ggr de förekommer

 

MEN det kommer inte lösa allt heller, eftersom jag vill att företagen som förekommer mest ggr bara ska visas 1 gång ändå, så att 20 företag kommer med.

 

Annars blir det ju lätt så att första 20 raderna är samma företag.

Dela detta inlägg


Länk till inlägg
Dela på andra webbplatser

Skapa ett konto eller logga in för att kommentera

Du måste vara medlem för att kunna kommentera

Skapa ett konto

Skapa ett nytt konto på vårt forum. Det är lätt!

Registrera ett nytt konto

Logga in

Redan medlem? Logga in här.

Logga in nu



×
×
  • Skapa nytt...