---
title: "Visa nästkommande match?"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/74760-visa-nästkommande-match"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "kilpin"
published: "2003-04-23T09:39:16.000Z"
updated: "2003-04-23T12:24:41.000Z"
replies: 12
views: 331
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/74760-visa-nästkommande-match"
---

# Visa nästkommande match?

## #1 — kilpin, 2003-04-23T09:39Z

Hej,
jag har en fotbollssida där jag har lagt in alla matcher i en databas med datum, hemmalag, bortalag etc.

Nu vill jag på en sida visa vilken nästkommande match är med datum och lag. Hur gör jag det? Jag vill ju alltså att när matchen är spelad (dvs datumet för den matchen har passerat) så ska det automatiskt komma visas nästa match i ordningen.

Här är lite kod som jag använder:

```

<%	Set Connect = Server.CreateObject("ADODB.Connection")
	Connect.Open("DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("databas.mdb")) 
 
Visa = "SELECT * FROM games"
"SELECT * FROM games "
set RecSet = Connect.execute(Visa)
%>

Nästa match:<br>
<% =RecSet("date") %> <% =RecSet("hteam") %> - <% =RecSet("ateam") %>

 <%	
	RecSet.Close
	Connect.Close
	Set Connect = Nothing
	%>
```

Någon som kan hjälpa mig?

Redigerat: Hmm, såg att formatteringen av koden blev helt miffo, sorry...

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

## #2 — m_soderlund, 2003-04-23T09:43Z

Du skulle kunna lägga till en kolumn i databasen som heter played och sätta den som 0 om den inte är spelad, 1 om den är spelad. Sen kör du denna SQL-kod:

```
VISA = "SELECT Top 1 * FROM games WHERE played=0"
```

Jag tror att det kan fungera..

Och sen behöver du väl inte hämta alla fält i tabellen, räcker det inte med att skriva ut exempelvis falt, falt2 etc. i stället för en asterix \*? Du får bättre fart på scriptet i så fall, speciellt om du har många kolumner i tabellen, men använder få.

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

## #3 — kilpin, 2003-04-23T09:45Z

Det är givetvis ett alternativ men jag vill gärna slippa ändra i databasen och ange  när matchen är spelad. Jag vill att det skall ske med automatik.

Visst behöver jag inte hämta alla fält i tabellen men den är så liten så att det spelar ingen roll. Tror att det totalt är 5 fält som skall hämtas...

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

## #4 — @nders, 2003-04-23T09:46Z

Annars är det ju bara att jämföra med dagens datum i SQL-frågan. Lagrar du även tid i din kolumn *date*?

Jag tycker att du ska byta namn på kolumnen date också, eftersom det är ett reserverat ord både här och där. Man kan klamra om man vill, men namnbyte är bäst.

```
strSQL = "SELECT * FROM games WHERE [date] > Now()"
```

Mvh,

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

## #5 — LarsG, 2003-04-23T09:47Z

Varför behövs den kolumnen

```
select top 1 * from games
 where gamedate > now()
  order by gamedate
```

Om det är flera matcher med samma (lägsta) datum så returneras alla.

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

## #6 — kilpin, 2003-04-23T09:57Z

Tack @nders. Det funkade perfekt och du har nog rätt i att jag skall byta ut date mot något annat. Tänkte inte på det.

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

## #7 — @nders, 2003-04-23T10:01Z

SQL-frågan i mitt inlägg hämtar dock alla matcher som inte har spelats. Vill du begränsa det, så gör det med TOP enligt LarsGs inlägg.

Mvh,

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

## #8 — kilpin, 2003-04-23T10:23Z

Jag märkte det men jag löste det problemet med att sätta

Dim antal
antal = 0
Do While antal \< 1

och senare:

nummer = nummer + 1

Men kanske LarsGs förslag är bättre...

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

## #9 — @nders, 2003-04-23T10:29Z

> **kilpin skrev:**
>
> Men kanske LarsGs förslag är bättre...

Ja.

Man ska inte hämta data man inte ska använda.

Mvh,

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

## #10 — kilpin, 2003-04-23T10:38Z

Så sant så sant.

Men en liten fråga till:

Om jag har en match som spelas idag så visas ju inte den eftersom att det står

```
WHERE [date] > Now()
```

Den borde alltså stå kvar en dag längre, dvs Now() + en dag till. Hur löser man det?

Kan man istället för Now() använda något som hänvisar till i morgon?

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

## #11 — Engine^, 2003-04-23T10:40Z

```
DateAdd("d", 1, Now())
```

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

## #12 — kilpin, 2003-04-23T10:46Z

Hmm, det fungerade inte men om jag gjorde så här:

```
DateAdd("d", -1, Now())
```

så funkade det.

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

## #13 — Engine^, 2003-04-23T12:24Z

Det är samma som att dra bort en dag från dagens datum. Du frågade dock om att lägga till en dag ;)

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

---

Tråden på webben: https://www.webforum.nu/amne/asp/74760-visa-nästkommande-match
