---
title: "datum fel"
type: "forum-thread"
url: "https://www.webforum.nu/amne/databaser-sql/103461-datum-fel"
topic: "Databaser & SQL"
topic_url: "https://www.webforum.nu/amne/databaser-sql"
author: "henkz"
published: "2004-05-12T18:31:46.000Z"
updated: "2004-05-12T19:50:36.000Z"
replies: 7
views: 349
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/103461-datum-fel"
---

# datum fel

## #1 — henkz, 2004-05-12T18:31Z

Koden nedan fungerar inget vidare. Det som händer är att alla medlemmar som var inloggade för exakt en månad sedan visas.

Jag vill endast få fram dem som varit inloggad det senaste dygnet(24h)

```
Sql = "Select count(*) as Found from user where logfil between '"&DateAdd("d",-1,now()) &"' AND '"&now()&"'"
```

db= mysql 4.x
datatyp för logfil: varchar(30)  -Vill behålla denna typ..

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

## #2 — LarsG, 2004-05-12T18:46Z

> varchar(30) -Vill behålla denna typ..

Varför?

```
Sql = "Select count(*) as Found from user " & _
" where logfil between Date_Sub(current_date, interval 1 day) and current_date "
```

Flyttas från Mysql

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

## #3 — henkz, 2004-05-12T18:59Z

Jag försökte ändra datatyp, men det ställde bara till det.
Webbservern var förrut placerad i annat land och hade inte stöd för svenska. Använde då tyskdatum och servern var linux med sunasp. Nu använder jag istället en svensk winserver.

Koden ovan gav resultatet: 0

Det måste bero på lagningen av datumet.
logfil= 07.05.2004 07:02:03

Går detta att fixa tror du?

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

## #4 — LarsG, 2004-05-12T19:14Z

Om alla värden har samma format så borde

```
where 
concat(substring(logfile from 7 for 4), '-',
           substring(logfile from 4 for 2) , '-'
           substring(logfile from 1 for 2))
between date_sub(current_date,interval 1 day) and current_date
```

Om du använder en datetime datatyp och sql-funktioner (t.ex. current_timestamp) för att lagra datum så slipper du krångel.

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

## #5 — henkz, 2004-05-12T19:30Z

Får tyvärr felet:

MySQL\]\[ODBC 3.51 Driver\]\[mysqld-4.0.17-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 '(substring(logfile from 7 for 4), '-', substring(logfile from 4

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

## #6 — henkz, 2004-05-12T19:31Z

Kom på en sak.
Om en person inte har aktiverat sitt konto, blir "logfil" tomt!
Då kanske inte din kod ovan fungerar...

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

## #7 — LarsG, 2004-05-12T19:37Z

Det fel som du får har inget att göra med vilket data som finns i tabellen.

Jag hade missat ett komma

```
select count(*) from found
where 
concat(substring(logfile from 7 for 4), '-',
           substring(logfile from 4 for 2) , '-',
           substring(logfile from 1 for 2))
between date_sub(current_date,interval 1 day) and current_date
```

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

## #8 — henkz, 2004-05-12T19:50Z

Fungerar perfekt!

Tack så mycket!

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

---

Tråden på webben: https://www.webforum.nu/amne/databaser-sql/103461-datum-fel
