---
title: "gruppera efter dagar??"
type: "forum-thread"
url: "https://www.webforum.nu/amne/databaser-sql/160437-gruppera-efter-dagar"
topic: "Databaser & SQL"
topic_url: "https://www.webforum.nu/amne/databaser-sql"
author: "eddy1"
published: "2007-05-17T16:14:52.000Z"
updated: "2007-05-17T19:01:36.000Z"
replies: 10
views: 352
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/160437-gruppera-efter-dagar"
---

# gruppera efter dagar??

## #1 — eddy1, 2007-05-17T16:14Z

Hej. har suttit många timmar idag med sql men blir tokig..

Jag vill alltså gruppera alla poster i en databas per dag, cellen "c_date" som innehållet datumet är i formatet DateTime.. ''

har provat med datepart men får det inte att funka, fick även detta förslag:
YEAR(c_Date) + MONTH(c_Date) + DAY(c_Date)

men det blir ju en skit konstig summa om det skrivs ut!

Så här ser koden ut nu, IGEN...

```
Select left(c_date,10), avg(oc) as av from (select count(*) as oc from Hits where id="& Session("id") &" and page_id="& Session("page_id") &" group by left(c_date,10)) dt;
```

 

dett averkar ju som om han inte ser skillnad på 2006-01-01 och 2007-01-01 ??

Mvh

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

## #2 — Pace, 2007-05-17T16:19Z

```
GROUP BY YEAR(c_date), MONTH(c_date), DAY(c_date)
```

> **eddy1 skrev:**
>
> dett averkar ju som om han inte ser skillnad på 2006-01-01 och 2007-01-01 ??

Är du säker på att det är en *han*? ;)

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

## #3 — eddy1, 2007-05-17T16:22Z

Fel av mig, jag vet inte hur det är hos er men min heter Lisa och är en hon..

så här blev koden i sql manager express.. 
Men det funkar ändå inte..

```
SELECT     YEAR(c_Date) AS Expr1, MONTH(c_Date) AS Expr2, DAY(c_Date) AS da, COUNT(*) AS oc
FROM         Hits
WHERE     (Customer_ID = 3) AND (Page_ID = 1)
GROUP BY YEAR(c_Date), MONTH(c_Date), DAY(c_Date)
ORDER BY Expr1, Expr2, da DESC
```

 

detta ger ju fyra fält. JAg vill ju ha datum fältet samt antalet???

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

## #4 — Pace, 2007-05-17T16:29Z

Jag skrev aldrig att du skulle ändra fälten i din SELECT-sats. Bara GROUP BY.

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

## #5 — eddy1, 2007-05-17T16:35Z

jag har provat allt nu...

jag vill bara få till en sats som grupperar efter dagar och skriver ut antal??
Men inte går det...

denna funkar inte, men har jag "LEFT(c_Date, 10)" i group by så funkar det

```
SELECT     LEFT(c_Date, 10) AS Expr1, COUNT(*) AS oc
FROM         Hits
WHERE     (Page_ID = 1) AND (ID = 3)
GROUP BY YEAR(c_Date), MONTH(c_Date), DAY(c_Date)
```

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

## #6 — Pace, 2007-05-17T17:42Z

> **eddy1 skrev:**
>
> denna funkar inte, men har jag "LEFT(c_Date, 10)" i group by så funkar det

Använd det då.

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

## #7 — eddy1, 2007-05-17T17:52Z

a det funkar ju bara halv bra, inget fel i sql satsen men man vet ju inte formatet på datumet så det är ju osäkert hur många tecken man ska använda till left?? 
Du har ju säkert rätt med ditt förslag för man ska ju använda datum funktioner..

Men
"GROUP BY YEAR(c_Date), MONTH(c_Date), DAY(c_Date)" är ju okey men för att använda den måste jag använda samma funktion i början på select satsen, alltså 
"SELECT YEAR(c_Date), MONTH(c_Date), DAY(c_Date), Count(\*) as cn"
annars får man felmeddelande...

Men skriver jag detta ändrar sql manager Express automatiskt till:

```
SELECT YEAR(c_Date) AS Expr1, MONTH(c_Date) AS Expr2, DAY(c_Date) AS Expr3, COUNT(*) AS oc
```

 

då ger ju detta 4 fält... Fan va lurigt detta var..

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

## #8 — eddy1, 2007-05-17T18:39Z

ÄR det´ta ej möjligt att lösa ?? tyckte ända det var en relativt enkel fråga men ändå inte  x(

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

## #9 — Peter S, 2007-05-17T18:57Z

```
SELECT    convert(char(10), c_Date, 20) AS Expr1, COUNT(*) AS oc
FROM         Hits
WHERE     (Page_ID = 1) AND (ID = 3)
GROUP BY convert(char(10), c_Date, 20)
```

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

## #10 — eddy1, 2007-05-17T19:00Z

Fan, 
Reeespect mannen!! det funkar!

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

## #11 — Peter S, 2007-05-17T19:01Z

:bire

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

---

Tråden på webben: https://www.webforum.nu/amne/databaser-sql/160437-gruppera-efter-dagar
