---
title: "MonthValue"
type: "forum-thread"
url: "https://www.webforum.nu/amne/databaser-sql/80648-monthvalue"
topic: "Databaser & SQL"
topic_url: "https://www.webforum.nu/amne/databaser-sql"
author: "mhedda"
published: "2003-06-26T10:03:24.000Z"
updated: "2003-06-27T12:03:04.000Z"
replies: 10
views: 278
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/80648-monthvalue"
---

# MonthValue

## #1 — mhedda, 2003-06-26T10:03Z

Hej!
Jag undrar om det finns något smart sätt att skriva om dom här sql frågorna så att den lägger ihop alla tex januari nu lägger den ihop januari om det är exakt samma datum tex 030101 & 030101
men om jag skriver 030101 och 030106 då visar den två januari
Hur göra??
Hoppas ni förstår mitt dilemma.

\---------------------------------------------------------------------------------

$strSQL_nam="SELECT DISTINCT(Month(datum)) AS MonthValue From tbl_tidrapport WHERE namn='$namn'  GROUP BY Month(datum)";

\--------------------------------------------------------------------------------

$strSQL_man="SELECT SUM(tid_atgang) From tbl_tidrapport WHERE namn='$namn' AND datum = '$datum'  GROUP BY Month(datum)";

MVH hedda

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

## #2 — LarsG, 2003-06-26T11:31Z

Jag tycker att du borde få en post per månad med dina frågor. Vilken DBMS är det?

Att ha både distinct och group by är onödigt.

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

## #3 — mhedda, 2003-06-26T12:37Z

svar

Det är Ms-sql och det verkar och jag ser nu att fältet datum är varchar det kanske är lite dumt men går det iallafall på någe sätt. 
MVH Hedda

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

## #4 — LarsG, 2003-06-26T13:08Z

Om du byter till datetime så skall det fungera med month,

Om du inte vill byta typ, så borde det gå med

```
group by month(cast(datum as datetime))
```

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

## #5 — mhedda, 2003-06-26T13:39Z

felmeddelande

Har nu så här men får felmeddelandet

\------------------------------------------------------------------			
$strSQL_month="SELECT Month(datum) From tbl_tidrapport WHERE namn='$namn' AND datum='$datum' group by month(cast(datum as datetime))";
\------------------------------------------------------------------------------------

Warning: SQL error: \[Microsoft\]\[ODBC SQL Server Driver\]\[SQL Server\]Column 'tbl_tidrapport.datum' is invalid in the select list because it is not contained in either an aggregate function or the GROUP BY clause., SQL state 37000 in SQLExecDirect in c:\\inetpub\\wwwroot\\tid_rapport\\stat_2\\show.php on line 254

Man är ju inte så haj på det här men vad kan det vara??

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

## #6 — LarsG, 2003-06-26T14:32Z

Om du använder group by så måste du ha samma uttryck i select-listan så du måste ha 

```
 $strSQL_month="SELECT Month(cast(datum as datetime)) From tbl_tidrapport WHERE namn='$namn' AND datum='$datum' group by month(cast(datum as datetime))";
```

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

## #7 — mhedda, 2003-06-26T14:49Z

Tack men..

Nu blir det inget felmeddelande men den visar iallafall 
tex.
När jag har.

2003-02-21 
2003-02-06 
2003-02-01 
2003-02-01 

februari 
februari
februari

Som du ser så lägger den ihop när datumet är exakt lika
som 2003-02-01 & 2003-02-01 men annars så blir det ett februari för varje inläggning som har med själva månaden 02 att göra.

Alltså när dagen förändras så känner den att inte hela datumet är lika och lägger därmed till ett till februari. Finns det något sätt att gå runt detta.

MVH Hedda

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

## #8 — mhedda, 2003-06-27T08:19Z

Cycklar jag?

Hej igen!
Vad kan det vara??

Måste man selektera ut själva månaden typ 02  på någe vis så man kan  lägga samman, om det är samma månad eller??

Jag skulle bli väldans glad om någon finner en lösning.

MVH Hedda

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

## #9 — mhedda, 2003-06-27T10:39Z

Någon som vet förstår??
Eller är jag helt ute och cycklar??

MVH Hedda

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

## #10 — mhedda, 2003-06-27T10:57Z

Provade med denna fråga i SQL Query Analyzer 

\--------------------------------------------------------------------------------
SELECT Month(cast(datum as datetime)) From tbl_tidrapport WHERE namn='Putte' group by month(cast(datum as datetime))
\---------------------------------------------------------------------------------

och då fick man ut månads nummer som 2\|4\|8\|12

men när jag körde samma fråga i koden så visar den bara 12 alltså december, december, december, december

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

## #11 — mhedda, 2003-06-27T12:03Z

Vad kan det vara om det går i SQL Query Analyzer 
Men i koden blir det samma månad hela tiden blir månad med högsta månads nummret typ december december osv ????
Vad kan det vara?? :-(
Trött på det här please om det är någon som har en aning.
Går det att lösa eller är det jag som är helt av banan ??

MVH Hedda

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

---

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