---
title: "SQL-sats"
type: "forum-thread"
url: "https://www.webforum.nu/amne/databaser-sql/81792-sql-sats"
topic: "Databaser & SQL"
topic_url: "https://www.webforum.nu/amne/databaser-sql"
author: "Riffles"
published: "2003-07-10T23:47:08.000Z"
updated: "2003-07-14T00:07:10.000Z"
replies: 7
views: 274
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/81792-sql-sats"
---

# SQL-sats

## #1 — Riffles, 2003-07-10T23:47Z

När jag kör denna kod så kan jag ej se texten "Match idag!". Det fungerar om datumet är = 1 eller \> 1, men inte 0. Vad är det för fel?
Vad ska jag skriva i min SQL-sats?

```
<% SQL = "SELECT TOP 1 * FROM 2003 WHERE datum > NOW"
Set RS = Conn.Execute(SQL)
%>
<% Do While not RS.eof %>
<%
dim Datum
dim t
t = RS("datum")
Datum = datediff("d", date, t)

if datum = 1 then
response.Write RS("lag1") & "-" & RS("lag2") & "<br>" & Datum & " dag kvar<br><br>"
elseif datum > 1 then
response.Write RS("lag1") & "-" & RS("lag2") & "<br>" & Datum & " dagar kvar<br><br>"
elseif datum = 0 then %>
<%= RS("lag1") %>-<%= RS("lag2")%><br>Match idag!

<% end if %>
```

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

## #2 — Engine^, 2003-07-11T08:30Z

```
<%
SQL = "SELECT TOP 1 * FROM 2003 WHERE datum >= NOW"
Set RS = Conn.Execute(SQL)

If Not RS.EOF Then
  Dagar = DateDiff("d", Date, RS("datum"))

  If Dagar = 0 Then
    Response.Write RS("lag1") & " - " & RS("lag2") & "<br>Match idag!"
  ElseIf Dagar = 1 Then
    Response.Write RS("lag1") & " - " & RS("lag2") & "<br>1 dag kvar<br><br>"
  Else
    Response.Write RS("lag1") & " - " & RS("lag2") & "<br>" & Dagar & " dagar kvar<br><br>"
  End If
End If
%>
```

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

## #3 — Riffles, 2003-07-13T22:21Z

Tyvärr så ser jag inte info när det är matchdag.
Ingen text kommer fram utan den hoppar till nästa match istället och visar infon.

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

## #4 — Sebbe, 2003-07-13T22:31Z

```
<%
SQL = "SELECT TOP 1 * FROM 2003 WHERE datum >= Now ORDER BY datum"
Set RS = Conn.Execute(SQL)

If Not RS.EOF Then
  If FormatDateTime(RS("datum"), vbShortDate) = Date() Then
    Response.Write RS("lag1") & " - " & RS("lag2") & "<br>Match idag!"
  Else
    Dagar = DateDiff("d", Date(), RS("datum"))

    If Dagar = 1 Then
      Response.Write RS("lag1") & " - " & RS("lag2") & "<br>1 dag kvar<br><br>"
    Else
      Response.Write RS("lag1") & " - " & RS("lag2") & "<br>" & Dagar & " dagar kvar<br><br>"
    End If
  End If
End If
%>
```

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

## #5 — Riffles, 2003-07-13T22:52Z

Nej, tyvärr, problemet kvarstår.
Datumet i databasen (Access) står så här: 2003-07-02 (Datum/Tid) om det kan vara till nån hjälp.

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

## #6 — Sebbe, 2003-07-13T23:02Z

Har ingen aning om det här spelar någon roll, men testa att byta SQL-frågan till:

```
SQL = "SELECT TOP 1 * FROM 2003 WHERE datum >= Date ORDER BY datum"
```

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

## #7 — Riffles, 2003-07-13T23:43Z

Nu ser SQL-satsen ut såhär:
SQL = "SELECT TOP 1 \* FROM 2003 WHERE datum \>= Date() ORDER BY datum"
Nu skriver den ut 0 dagar kvar.

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

## #8 — Riffles, 2003-07-14T00:07Z

Nu fungerar det! Jag bytte tillbaka till min IF-sats och behöll den nuvarande SQL-satsen och då fungerade det!;) Tack alla för hjälpen!

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

---

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