---
title: "sorteringsproblem"
type: "forum-thread"
url: "https://www.webforum.nu/amne/databaser-sql/135984-sorteringsproblem"
topic: "Databaser & SQL"
topic_url: "https://www.webforum.nu/amne/databaser-sql"
author: "henkz"
published: "2005-10-19T07:59:03.000Z"
updated: "2005-10-21T16:56:53.000Z"
replies: 8
views: 414
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/135984-sorteringsproblem"
---

# sorteringsproblem

## #1 — henkz, 2005-10-19T07:59Z

Vill kunna få fram vilken placering en bild har via medelvärdet.
Någon som har en bättre lösning?

Nuvarande fungerade kod utan placering:

```
SQL = "SELECT id, file, rubrik, bredd, hojd, votesnitt, votetotal FROM bilder WHERE userid='"&session("userid")&"' order by presspic desc, indag"
```

Ej fungerande test:

```
SQL = "SELECT id, file, rubrik, bredd, hojd, votesnitt, votetotal, (SELECT COUNT(*) FROM bilder t2 WHERE t2.votesnitt > t1.votesnitt) AS num_rows_greater FROM bilder t1 WHERE userid='"&session("userid")&"' order by presspic desc, indag"
```

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

## #2 — LarsG, 2005-10-19T08:39Z

På vilket sätt fungerar det inte?

Om du har så där långa rader så kan du gärna dela upp dem så att det blir läsbart.

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

## #3 — henkz, 2005-10-19T08:55Z

det ger felmeddelandet:
Microsoft OLE DB Provider for ODBC Drivers fel '80040e14' 

\[MySQL\]\[ODBC 3.51 Driver\]\[mysqld-4.0.23-nt\]You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'SELECT COUNT(\*) FROM bilder t2 WHERE t2.votesnitt \> t1.votesnit 

Kan det bero på att jag har typen decimal(10,2) i mysql för "votesnitt" ?

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

## #4 — @nders, 2005-10-19T08:59Z

Nej, det beror på att du har en gammal version av MySQL, som inte stödjer subqueries. Uppgradera?

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

## #5 — henkz, 2005-10-19T09:01Z

räcker det med version 4.1x eller måste jag installera v5.x?

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

## #6 — @nders, 2005-10-19T09:13Z

4\.1 räcker för att få stöd för subqueries.

Mvh

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

## #7 — henkz, 2005-10-21T16:45Z

Nu har jag äntligen fått tid att uppgradera till v4.1
Sql strängen ovan fungerade direkt men när jag skulle göra nästa gick det sämre. Koden nedan ger felet:

Microsoft OLE DB Provider for ODBC Drivers fel '80040e31' 
\[MySQL\]\[ODBC 3.51 Driver\]\[mysqld-4.1.14-nt\]Unknown table 'bilder' in field list

```
SQL = "SELECT bilder.id, bilder.file, bilder.bredd, bilder.hojd, bilder.votesnitt,
member.id, member.username, member.kon, member.age,(SELECT COUNT(*)
 FROM bilder t2 WHERE t2.votesnitt > t1.votesnitt) AS num_rows_greater 
FROM bilder t1 INNER JOIN member ON member.id = bilder.userid WHERE 
bilder.id='"&pid&"' LIMIT 1"
```

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

## #8 — LarsG, 2005-10-21T16:48Z

Eftersom du har gett tabellen bilder ett korrelationsnamn så måste du använda det namnet och inte det ursprungliga tabellnamnet.

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

## #9 — henkz, 2005-10-21T16:56Z

ja givetvis :)

Nu funkar det fint!
Tack!

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

---

Tråden på webben: https://www.webforum.nu/amne/databaser-sql/135984-sorteringsproblem
