---
title: "select * where date = idag fast fältet är datetime"
type: "forum-thread"
url: "https://www.webforum.nu/amne/databaser-sql/161071-select-where-date-idag-fast-fältet-är-datetime"
topic: "Databaser & SQL"
topic_url: "https://www.webforum.nu/amne/databaser-sql"
author: "Yoda"
published: "2007-06-03T19:37:25.000Z"
updated: "2007-06-04T20:05:54.000Z"
replies: 11
views: 520
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/161071-select-where-date-idag-fast-fältet-är-datetime"
---

# select * where date = idag fast fältet är datetime

## #1 — Yoda, 2007-06-03T19:37Z

Håller på att göra en blogg. I inläggen har jag ett fält som är av typen datetime. Hur hämtar jag inläggen från ett visst datum där tiden inte spelar någon roll?

```
SELECT *
FROM Blogg
WHERE Datum = 2007-06-01
```

Fast det fungerar ju inte eftersom det inte finns några datum som ser ut så där i typen datetime.

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

## #2 — Peter S, 2007-06-03T19:45Z

Du skriver inte vilket DBMS som används. MSSQL:

```
SELECT *
FROM Blogg
WHERE year(Datum) = year(getdate())
  and month(Datum) = month(getdate())
  and day(Datum) = day(getdate())
```

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

## #3 — Yoda, 2007-06-03T19:52Z

Hm, vad betyder DBMS?
Jag använder MySQL 4.1 och datumet skrivs ÅÅÅÅ-MM-DD TT-MM-SS. Kanske det hjälper.

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

## #4 — Peter S, 2007-06-03T19:56Z

DBMS = Database Management System = Databashanteringssystem.

Byt ut getdate() mot curdate() för MySQL.

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

## #5 — Yoda, 2007-06-03T20:08Z

Okej, det har jag ju hört när jag tänker efter.
Fast det saknas något i satsen. Jag får inte ut några resultat. Var skriver jag in det datumet jag vill ha alt. skickar med variabel med datumet?

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

## #6 — GunnarD, 2007-06-03T20:14Z

Prova med

```
SELECT *
FROM Blogg
WHERE Datum = '2007-06-01'
```

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

## #7 — Peter S, 2007-06-03T20:22Z

Av titeln på tråden att döma trodde jag du ville matcha mot poster från i dag. Till höger om likhetstecknen anger du de olika datumdelarna. Om du har en sträng *d* \= "2007-06-01" kan du t.ex. skriva (VBScript):

```
d = cdate(d)

SELECT *
FROM Blogg
WHERE year(Datum) = year(d)
  and month(Datum) = month(d)
  and day(Datum) = day(d)
```

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

## #8 — Yoda, 2007-06-03T20:23Z

GunnarD: Den returnerar ett tomt resultat. Förmodligen eftersom datumen som finns i tabellen är ex. 2007-06-01 21:01:43 och då finns ju inte bara 2007-06-01. Väl?

Jag använder mig av php. 

```
function select_inlagg()
{
	$select_inlagg = "SELECT * 
			FROM Blogg
			WHERE year( Datum ) = year( curdate(2007) ) 
			AND month( Datum ) = month( curdate(06) ) 
		             AND day( Datum ) = day( curdate(01) ) ";				
	$result = mysql_query($select_inlagg);
	return $result;
}

function inlagg($result)
{
	while($data = mysql_fetch_array($result))
	{
		echo "<p>" . $data["Kommentar"] . "</p><p>/" . $data["Namn"] . "<br />" . $data["Datum"] . "</p><hr />";
	}
}
```

och 

```
$result = select_inlagg();
inlagg($result);
```

Fungerade inget vidare...
I dagens blogg vill jag hämta upp dagens inlägg/kommentarer.

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

## #9 — Peter S, 2007-06-03T20:35Z

curdate() vill inte ha parametrar. Vill du ha dagens poster använder du koden från inlägg #2, men byter ut getdate() mot curdate().

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

## #10 — Yoda, 2007-06-03T20:46Z

AHA, nu förstår jag. Det fungerar ju jättebra. Jag hade ingen kommentar från idag i tabellen bara. Tack! 

Fast kommentarerna från idag vill jag ska visas i morgon också. Kommentarerna från igår ska visas tillsammans med mitt blogginlägg från igår. Hur skriver jag då då?

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

## #11 — xox-se, 2007-06-04T07:55Z

testa att lägga till

```
SELECT * FROM Blog WHERE createad_at > FROM_DAYS(2)
```

där created_at är ett DATETIME fält som sparas med CURRENT_TIMESTAMP() / Now()

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

## #12 — Yoda, 2007-06-04T20:05Z

Tack!

Det var så här jag menade, förklarade förmodligen som en kratta.. :-)

```
SELECT * 
FROM Blogg
WHERE Datum LIKE '2007-06-01%'
```

Då får jag ju alla kommentarer från det datumet oavsett tidpunkt. 
Och istället för att skriva datumet i select-satsen kan jag skicka med en variabel i funktionen. Men det hör inte till detta forumet.

Tack för all hjälp!!

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

---

Tråden på webben: https://www.webforum.nu/amne/databaser-sql/161071-select-where-date-idag-fast-fältet-är-datetime
