---
title: "Lista ett värde bland flera!"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/120985-lista-ett-värde-bland-flera"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "Alamartimo"
published: "2005-01-25T06:11:59.000Z"
updated: "2005-01-25T18:33:47.000Z"
replies: 10
views: 365
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/120985-lista-ett-värde-bland-flera"
---

# Lista ett värde bland flera!

## #1 — Alamartimo, 2005-01-25T06:11Z

Hej,

Har ett problem som jag funderat på länge.

Har inte skrivit någon kod då jag inte vet än hur jag ska göra.

Jag har en tabell som heter **Practice**  där jag listar tider Förare gjort och en tabell som heter **Forare**.

En Förare har alltså gjort många tider i **Practice**  men jag vill i en resultat sida visa dom bästa tiderna som respektive förare gjort.

Har funderat på:

```
 Select min(tid) Laptime FROM Practice
```

 
men sen är det stopp..

Någon som vet hur jag ska göra?

Tack på förhand.

/Hannu

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

## #2 — @nders, 2005-01-25T07:03Z

```
Select forare, min(tid) Laptime FROM Practice group by forare order by forare
```

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

## #3 — Engine^, 2005-01-25T07:46Z

Så här tolkar jag frågan. 

```
SELECT namn, min(tid)
FROM Practice
INNER JOIN Forare ON Forare.id = Practice.forarid
GROUP BY namn
ORDER BY min(tid)
```

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

## #4 — @nders, 2005-01-25T07:48Z

Om man läser frågan ordentligt är det klart att man kan tolka det så. ;) :)

Mvh

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

## #5 — Alamartimo, 2005-01-25T13:21Z

Ahh okej.. 

Jag förstår hur Ni tänkt men får inte till koden.

Så koden jag gjort ser ut så här:
Följde  Engine^ 's exempel men virrade nog ihop koden fel  :e 

```
	set Conn = Server.CreateObject("ADODB.Connection") 
	Conn.Open "DSN=F1SLM"
	SQL = "SELECT ManagerID, min(LapTime) FROM Practice INNER JOIN Manager ON Manager.ManagerID = Practice.ManagerID"
	Set rsVisa = Conn.Execute(SQL)
```

Glömde ju.. Fick det här felmeddelandet på ovan kod:

Microsoft OLE DB Provider for ODBC Drivers fel '80004005'

\[MySQL\]\[ODBC 3.51 Driver\]\[mysqld-4.0.21-nt\]Column: 'ManagerID' in field list is ambiguous

/F1SLM/showpractice.asp, rad 37  (Set rsVisa = Conn.Execute(SQL))

Var inte exakt de tabellnamnen jag skrev innan.

Men i alla fall i tabellen Practice har jag fälten.

PracticeID (primärnyckel), ManagerID, LapTime

Har en tabell som heter Manager där namnet på personen (managern) etc lagras.

22 Managers kör sedan Practice, 10 varv var..

På resultatsidan vill jag då visa den bästa varvtiden den enskilde Managern presterat samt visa Managerns namn från tabellen Manager.

Ja jag tror ni förstår  :)

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

## #6 — @nders, 2005-01-25T13:23Z

Du har ju kastat bort hälften av Engine^s SQL-fråga, till att börja med...

Angående felmeddelandet; du måste ange tabell för ManagerID i SELECT-delen, precis som i din JOIN.

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

## #7 — Alamartimo, 2005-01-25T15:46Z

@nders:

Ja det har jag ju gjort  :r 

Jag ska kolla :-)

Tack

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

## #8 — Alamartimo, 2005-01-25T16:34Z

Okej nu är koden som följer:

```
set Conn = Server.CreateObject("ADODB.Connection") 
	Conn.Open "DSN=F1SLM"
	SQL = "SELECT Manager.ManagerID, min(LapTime) FROM Practice INNER JOIN Manager ON Manager.ManagerID = Practice.ManagerID GROUP BY ManagerID"
	Set rsVisa = Conn.Execute(SQL)

Do Until rsVisa.EOF

Counter = Counter + 1
```

Får ett annat felmeddelande nu.

```
ADODB.Recordset fel '800a0cc1'

Objektet kunde inte hittas i mängden med det begärda namnet eller numret.

/F1SLM/showpractice.asp, rad 59
```

Rad59

```
<%= rsVisa("MFName")%>&nbsp;<%= rsVisa("MLName")%>
```

Fälten: MFName och MLName ligger i tabellen Manager

hum..

Måste det inte vara med mer info i Select-satsen för att jag ska kunna få ut den infon??

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

## #9 — LarsG, 2005-01-25T16:45Z

> Måste det inte vara med mer info i Select-satsen för att jag ska kunna få ut den infon??

Jo. Om du lägger till kolumner i select-listan så skall du även lägga till dem i group by.

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

## #10 — Alamartimo, 2005-01-25T18:13Z

Det problemet fixat men nu får jag inte ut värdet LapTime:

```

SQL = "SELECT Manager.ManagerID, Manager.MFName, Manager.MLName, min(LapTime) FROM Practice INNER JOIN Manager ON Manager.ManagerID = Practice.ManagerID GROUP BY ManagerID, MFName, MLName ORDER BY LapTime"
```

Felmeddelande:

```
ADODB.Recordset fel '800a0cc1'

Objektet kunde inte hittas i mängden med det begärda namnet eller numret.

/F1SLM/showpractice.asp, rad 62
```

Rad62: \<%= rsVisa("LapTime")%\>

Har även provat att ha med Practice.LapTime och bara LapTime i GROUP BY

Värdet LapTime finns bara i Tabellen Practice och inte i tabellen Manager..

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

## #11 — Alamartimo, 2005-01-25T18:33Z

Fixade det  :) 

```
SQL = "SELECT Manager.ManagerID, Manager.MFName, Manager.MLName, min(LapTime) AS LTIME FROM Practice INNER JOIN Manager ON Manager.ManagerID = Practice.ManagerID GROUP BY ManagerID, MFName, MLName ORDER BY LapTime DESC"
```

La till AS LTIME

Rad62: \<% rsVisa("LTIME") %\>

Tack alla som svarade mig  :birp

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

---

Tråden på webben: https://www.webforum.nu/amne/asp/120985-lista-ett-värde-bland-flera
