---
title: "hjälp med sortering."
type: "forum-thread"
url: "https://www.webforum.nu/amne/databaser-sql/153475-hjälp-med-sortering"
topic: "Databaser & SQL"
topic_url: "https://www.webforum.nu/amne/databaser-sql"
author: "room"
published: "2006-11-07T10:57:46.000Z"
updated: "2006-11-10T07:54:49.000Z"
replies: 15
views: 690
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/153475-hjälp-med-sortering"
---

# hjälp med sortering.

## #1 — room, 2006-11-07T10:57Z

Hej. Jag är helt lost! Sitter och bygger en community och har lite svårt med att få sorteringen som jag vill ha. Jag har en tabell som heter friends som jag öppnar så här:

```
Set FriendsData=Server.CreateObject("ADODB.Recordset")
    FriendsData.open "SELECT * from friends WHERE (To = " & Request("ProfileID") & " OR From = " & Request("ProfileID") & ") AND Approved = 1 ORDER By " & Request("order") & ";",connect,adOpenStatic,adLockOptimistic
```

Nu till problemet, jag vill ju kunna sortera på Namn (username) eller Senast Inloggad (last_Date). Grejjen är att dessa fält ligger i medlem databasen (members).

Hur gör jag, behöver kod tack! Förstår att det är någon form av inner join eller liknande som behövs, men som sagt, behöver kod ;)

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

## #2 — @nders, 2006-11-07T11:32Z

Jag kan fundera på att fundera på det, om du kastar bort allt skräp ur koden och visar den komplette SQL-frågan såsom databasen tolkar den. Annars börjar jag bara grina när jag tittar på din kod. :)

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

## #3 — room, 2006-11-07T12:13Z

ok? jag antar att du menar detta:

```
SELECT * from friends WHERE (To = 5 OR From = 5) AND Approved = 1 ORDER By From;
```

ORDER By From; \<-- From är ett Tal som motsvarar ett ID från tabellen members, i den tabellen finns ett fält som heter Username och det är enligt det fältet jag vill sortera.

Svårt att förklara exakt hur jag menar, men jag antar att detta går att lösa.

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

## #4 — @nders, 2006-11-07T12:21Z

> ok? jag antar att du menar detta:

Jo.

\- - - - - - - 

Det låter märkligt att ha det på det sättet. Varför skickar du inte bara sorteringsfältets namn istället och sorterar direkt? 

Om du nu ska ha det som du har det, hade jag gjort en ren select först, och sedan använt värdet från det resultatsetet.

(Sen får du också tänka på att inte ha fält som heter t.ex. "From", det är ju lite smått reserverat som nyckelord i SQL, om man säger så.)

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

## #5 — room, 2006-11-08T10:19Z

Okey, jag är fortfarande lost tror jag. Så här ser mina tabeller ut:

tabell -\> members
ID (Räknare)
Username (Text)
Last_Date (Datum/Tid)
\+ en del andra fält som inte är relevanta för min fråga

tabell -\> friends
ID (Räknare)
To (Tal)
From (Tal)
\+ en del andra fält som inte är relevanta för min fråga

Jag vill alltså sortera efter t ex From i tabellen friends. Men sorterar jag enligt exemplet ovan, så sorteras ju min data efter det ID som varje medlem har och det blir ju tokigt eftersom Anders Andersson kanske har ID 75 medans Örjan Öste har 15 och kommer då att sorteras före Anders Andersson.

Skulle vara tacksam för kod för att utföra sorteringen enligt mina önskemål. Vad det gäller reserverade ord så får jag kolla över det och ändra på de ställen jag använt sådana.

mvh

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

## #6 — LarsG, 2006-11-08T10:42Z

```
SELECT <kolumner>
  from friends inner join members on friends.from = members.id
 WHERE 5 in (To,From) 
   AND Approved = 1 
ORDER By members.username
```

to och from är reserverade ord. 

Ange alltid de kolumner du är intresserad av istället för att hämta alla.

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

## #7 — room, 2006-11-08T10:49Z

Tack för det. ska prova genast!

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

## #8 — @nders, 2006-11-08T10:54Z

Kan du inte visa hur ditt data ser ut, och hur du vill att resultatet ska se ut, för jag fattar ingenting. Om det nu inte är bara en vanlig join du vill åt, då skulle den kunna se ut så här:

```
SELECT m1.username as ToName, m2.username as FromName, friends.* 
from friends 
inner join members m1 on friends.to = m1.id
inner join members m2 on friends.from = m2.id
WHERE (To = 5 OR From = 5) AND Approved = 1 
ORDER By FromName
```

Men som sagt, jag är inte alls säker på att jag förstår...

edit: hoppsan, här händer det grejer medans jag gör annat. :)

mvh

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

## #9 — room, 2006-11-08T12:55Z

> **LarsG skrev:**
>
> ```
> SELECT <kolumner>
>   from friends inner join members on friends.from = members.id
>  WHERE 5 in (To,From) 
>    AND Approved = 1 
> ORDER By members.username
> ```
>
> 
> 
> to och from är reserverade ord. 
> 
> Ange alltid de kolumner du är intresserad av istället för att hämta alla.

Nu har jag fixat alla reserverade ord, men det blir fortfarande inte rätt sortering. Min SELECT sorteras fortfarande på ID't och inte på username't

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

## #10 — room, 2006-11-08T12:59Z

bifogar databasen så ni får se hur det ser ut.

Bilagor:

- [kuf.zip](https://www.webforum.nu/a/12819.zip)

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

## #11 — @nders, 2006-11-08T13:01Z

Och exakt hur ser din SQL-fråga ut nu?

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

## #12 — room, 2006-11-08T13:12Z

```
SELECT ToMember, FromMember, To_Comment, From_Comment, IRL 
  from friends inner join members on friends.fromMember = members.id 
 WHERE 5 in (ToMember,FromMember)
   AND Approved = 1 
ORDER By members.username
```

Exakt så där ser det ut nu.

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

## #13 — room, 2006-11-09T08:09Z

ingen med mer ideer? vore tacksamt

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

## #14 — LarsG, 2006-11-09T08:13Z

Vilken sortering får du och vilken vill du ha?

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

## #15 — Compusa, 2006-11-09T08:24Z

> **LarsG skrev:**
>
> Vilken sortering får du och vilken vill du ha?

> Nu till problemet, jag vill ju kunna sortera på Namn (username) eller Senast Inloggad (last_Date).

Jag antar att du döpt om kolumn-namnen?

```
SELECT ToMember, FromMember, To_Comment, From_Comment, IRL, Username, Last_Date 
FROM friends 
INNER JOIN members ON friends.fromMember = members.id 
WHERE 5 in (ToMember,FromMember) AND Approved = 1 
ORDER By Username, Last_Date DESC
```

/Redigerade sorteringen...

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

## #16 — Compusa, 2006-11-10T07:54Z

Hur går det? Har du fått problemet löst?

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

---

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