---
title: "hjälp med fråga"
type: "forum-thread"
url: "https://www.webforum.nu/amne/databaser-sql/93450-hjälp-med-fråga"
topic: "Databaser & SQL"
topic_url: "https://www.webforum.nu/amne/databaser-sql"
author: "trexter"
published: "2003-12-26T15:52:01.000Z"
updated: "2003-12-26T20:05:59.000Z"
replies: 10
views: 284
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/databaser-sql/93450-hjälp-med-fråga"
---

# hjälp med fråga

## #1 — trexter, 2003-12-26T15:52Z

Säg att jag har en tabell med fälten: username & points
Och med datan:

```
nisse 50
olle 10
pekka 100
```

Sedan vill jag med en sql-fråga ta reda på vilken "rating" en viss person har genom att titta på dess points-värde. Utskrivet borde det alltså i detta fallet kunna bli:

```
nisse 2
```

Hur ser denna SQL-fråga ut? :)

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

## #2 — tydal, 2003-12-26T16:03Z

SELECT username FROM din_tabell ORDER BY points DESC

Sen är det ju lätt med det skriptspråk du använder att numrera raderna.

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

## #3 — tydal, 2003-12-26T16:11Z

Jag tror fortfarande det enklaste är att du använder dig av skriptspråket. I php är det busenkelt, bara att läsa in i en array:

```
<?php
  $i = 0;
  while ($row = mysql_fetch_array())
  {
    $rating[$row['username']] = ++$i;
  }
?>
```

Sedan hittar du alltså personens rating i:
$rating\['personens_namn'\]

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

## #4 — trexter, 2003-12-26T16:33Z

Nja, onödigt att loopa igenom några tusen rader om det går att fixa direkt med sql.

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

## #5 — tydal, 2003-12-26T16:46Z

Det beror på hur många användare du behöver söka efter. En array är ju snabbare än en databas.

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

## #6 — trexter, 2003-12-26T16:53Z

> **tydal skrev:**
>
> Det beror på hur många användare du behöver söka efter. En array är ju snabbare än en databas.

Array snabbare än en databas? I vilket sammanhang?
Någon som vet om man kan lösa det med sql?

 :)

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

## #7 — tydal, 2003-12-26T17:01Z

\> Array snabbare än en databas? I vilket sammanhang?

Alla. En array ligger i minnet och en databas på hårddisk. Det som tar tid är att föra över informationen tlil arrayen, men om du ska göra flera liknande sökningar så lönar det ju sig.

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

## #8 — trexter, 2003-12-26T17:04Z

Oki, men får se om någon har något alternativ.

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

## #9 — K@llen, 2003-12-26T17:08Z

Du borde få fram vilken plats i listan en poäng ligger genom följande fråga, med reservation om där är flera med samma poäng, för då blir platsen delad.

```
select count(*) from tabellen
where points <= 50
```

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

## #10 — K@llen, 2003-12-26T17:22Z

Kom på en sak, det beror ju på hur du vill räkna din lista. Vill du räkna utifrån högsta rating får vi ändra en aning på frågan.

```
select count(*) from tabellen
where points >= 50
```

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

## #11 — trexter, 2003-12-26T20:05Z

tackar

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

---

Tråden på webben: https://www.webforum.nu/amne/databaser-sql/93450-hjälp-med-fråga
