---
title: "top, max eller vad?"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/10852-top-max-eller-vad"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "Jörgen HP"
published: "2001-07-30T22:35:00.000Z"
updated: "2001-07-31T11:37:00.000Z"
replies: 9
views: 308
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/asp/10852-top-max-eller-vad"
---

# top, max eller vad?

## #1 — Jörgen HP, 2001-07-30T22:35Z

Hej!

Jag har ett fält (int) i en databas också vill jag hämta de 3 största talen. Kan man kombinera MAX och TOP eller hur gör man?

SELECT TOP 3, MAX(Number) FROM ....

eller?

mvh Jörgen

Permalänk: https://www.webforum.nu/p/10852

## #2 — Mac, 2001-07-30T23:14Z

Jag vet tyvärr inte hur man kombinerar SQL satser på det viset, går säkert. Men beroende på hur många intar du har i din databas kan du ju lägga alla i en array och loopa igenom den två ggr för att ordna den i storleksordning för att sen plocka ut de tre som du vill. Detta är ju dock helt förkastligt om du har för stor databas. Lycka till!

Permalänk: https://www.webforum.nu/p/279227

## #3 — emission, 2001-07-30T23:36Z

Du vill ta ut de tre största?

SELECT TOP 3 Number FROM tabellen ORDER BY Number DESC

Permalänk: https://www.webforum.nu/p/279228

## #4 — jorgen, 2001-07-31T09:01Z

Hej!

Fick inte det att fungera så heller, läste någonstans att TOP inte stöds av mysql, stämmer det? :q

Löste det enligt följande istället:

```

For I = 0 To UBound(arrArtikel,2)

'en massa bla ha

If I = 3 Then Exit For

Next
```

Också sorterade jag dem i SQL frågan.

Mvh Jörgen ;)

Permalänk: https://www.webforum.nu/p/279229

## #5 — LarsG, 2001-07-31T09:10Z

I mysql:

```
SELECT Number FROM tabellen ORDER BY Number DESC limit 3
```

Permalänk: https://www.webforum.nu/p/279230

## #6 — jorgen, 2001-07-31T09:17Z

Kanon, fungerar perfekt! :D :D

Permalänk: https://www.webforum.nu/p/279231

## #7 — Zerephina, 2001-07-31T10:33Z

\*ha\* Det där var lite roligt. Jag är ute efter ungefär samma sak. Men... Nu behöver ingen sätta sig och knappa kod, men rent teoretiskt. Jag har en lång lista med namn och skulle vilja ta ut top tio för varje namn... Går det? Ja så klart att det säkert går, men kan man använda sql till det? Nej det går säkert inte...

Alltså. Jag har olika användare och de kan ha allt mellan 1 poängpost till hur många poängposter som helst och jag vill plocka ut deras 10 bästa och summera de. Sen gärna skriva hur många poster som räknas in i den totala slutsumma.

Ansträng er inte mer med detta, jag vill bara veta om det är möjligt...

Permalänk: https://www.webforum.nu/p/279232

## #8 — LarsG, 2001-07-31T11:19Z

Om en person kan ha flera poster med samma poäng så går det inte direkt med en sql-sats. Däremot om man vet att en viss poängsumma bara förekommer en gång per person så borde det gå med följande

```
select sum(points),name,case when count(points) > 10 then 10 else count(points) end as items
  from ogrish o
 where points in (select top 10 points 
                    from ogrish
                   where name = o.name order by points desc)
group by name
```

Borde fungera i SQL server. Om du använder Access så får man byta ut case mot en iif.

Red: inser att case är onödigt

```
select sum(points),name,count(points)  as items
  from ogrish o
 where points in (select top 10 points 
                    from ogrish
                   where name = o.name order by points desc)
group by name
```

Permalänk: https://www.webforum.nu/p/279233

## #9 — jorgen, 2001-07-31T11:23Z

Det LarsG inte fixar inom SQL är inte värt att veta :e :e

Jörgen HP

Permalänk: https://www.webforum.nu/p/279234

## #10 — Zerephina, 2001-07-31T11:37Z

ojj.. Ja det var snabba ryck... Måste testa direkt när jag kommer hem...

Permalänk: https://www.webforum.nu/p/279235

---

Tråden på webben: https://www.webforum.nu/amne/asp/10852-top-max-eller-vad
