---
title: "Välja ut månad ur ett datum?"
type: "forum-thread"
url: "https://www.webforum.nu/amne/databaser-sql/69657-välja-ut-månad-ur-ett-datum"
topic: "Databaser & SQL"
topic_url: "https://www.webforum.nu/amne/databaser-sql"
author: "Skogiz"
published: "2003-02-28T10:21:44.000Z"
updated: "2003-02-28T13:49:10.000Z"
replies: 5
views: 521
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/69657-välja-ut-månad-ur-ett-datum"
---

# Välja ut månad ur ett datum?

## #1 — Skogiz, 2003-02-28T10:21Z

Jag har ett wewbformulär där man gör en sökning och bland annat väljer vilken månad man vill göra sökningen under

Formuläret retunerar 01 till 12 beroende på vilken månad man valt (01 = januari osv)

```
 bla bla bla... AND databasnamn.Datum LIKE '" & 2003- & Request.Form("vald_manad") & "'
```

Så ser koden ut som jag har nu vilket ger syntax fel.

Det jag vill är att den utgår som i koden att året är 2003 och lägger in svaret från formuläret och gör en sökning.

Väljer jag januari ska den då placera in 01 så att sökningen bli 

LIKE 2003-01 så att jag får alla poster under januari.

Tack på förhand  :bire 

/F

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

## #2 — Engine^, 2003-02-28T11:36Z

```
strSQL = "WHERE ... AND Datum BETWEEN #" & DateAdd("d", -1, FormatDateTime(Year & "-" & Request.Form("vald_manad") & "-01", 2)) & _
"# AND #" & DateAdd("M", 1, FormatDateTime(Year & "-" & Request.Form("vald_manad") & "-01", 2)) &  "#"
```

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

## #3 — Skogiz, 2003-02-28T12:20Z

När jag kör den koden får jag

Microsoft VBScript runtime error '800a01c2' 

Wrong number of arguments or invalid property assignment: 'Year' 

Är man tvungen att använda BETWEEN?

Går det inte att köra sökningen med wildcard? T.ex 2003-01-\*

Då borde det väl "bara" vara att ta request.form på månaden man söker så att det placeras in rätt i sökkoden...(?)

Så att det blir något sådant här

```
WHERE bla bla bla.... AND databasnamn.Datum LIKE '2003" & "-" & Request.Form("vald_manad") & "-" & "*'
```

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

## #4 — Engine^, 2003-02-28T12:41Z

Tja.. har du datumen lagrad som en sträng så går det nog bra.

```
WHERE bla bla bla.... AND databasnamn.Datum LIKE '2003-" & Request.Form("vald_manad") & "%' [blue]' % Om du använder Access...[/blue]
```

Hade lite missar i mitt förra svar, men det bygger på att kolumnen är av typen Date/Time

```
strSQL = "WHERE ... AND Datum BETWEEN #" & DateAdd("d", -1, FormatDateTime(Year(Date) & "-" & Request.Form("vald_manad") & "-01", 2)) & _
"# AND #" & DateAdd("M", 1, FormatDateTime(Year(Date) & "-" & Request.Form("vald_manad") & "-01", 2)) &  "#"
```

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

## #5 — Skogiz, 2003-02-28T13:28Z

Tack för hjälpen! :)

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

## #6 — Engine^, 2003-02-28T13:49Z

Varsågod.

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

---

Tråden på webben: https://www.webforum.nu/amne/databaser-sql/69657-välja-ut-månad-ur-ett-datum
