Avatar billede hjep Nybegynder
30. januar 2003 - 11:41 Der er 5 kommentarer og
1 løsning

Konventering dato

Jeg bruger følgende
where cast(convert(nvarchar(6), popped, 112) as datetime)='200301'
for at hive januar måned ud af en mssql database.

'200301' vil jeg gerne have lavet som en variabel kaldet maaned.
Hvordan skal jeg skrive maaned
Jeg har prøvet med maaned="200301" men får så
Syntax error converting datetime from character string.
Avatar billede Spotgun Seniormester
30. januar 2003 - 11:43 #1
Prøv med:

maaned = CStr("200301")
Avatar billede kichian Nybegynder
30. januar 2003 - 11:47 #2
Hvad med:
where  popped = cast(convert(nvarchar(6), '200301', 112) as datetime) = cast(convert(nvarchar(6), '200301', 112) as datetime)

Eller hvis popped allerede er et datetime felt, så
where  popped = cast(convert(nvarchar(6), '200301', 112) as datetime)

Hvilke felter har du i din tabel?
Avatar billede kichian Nybegynder
30. januar 2003 - 11:49 #3
Ups... Hvis popped er et nvarcharfelt:

where cast(convert(nvarchar(6), popped, 112) as datetime) = cast(convert(nvarchar(6), '200301', 112) as datetime)
Avatar billede hjep Nybegynder
30. januar 2003 - 11:53 #4
maaned = CStr("200301") virker ikke

I min tabel på databasen har jeg et felt kaldet popped som er et datetime felt på databasen, hvor den skriver en lidt kludret dato. For at kunne arbejde med datoen altså trække dage eller måneder ud brugte jeg så
cast(convert(nvarchar(6), popped, 112) as datetime)='200301' hvilket da også virker. Men de '200301' skulle jo gerne være en variable så jeg nemt kan skifte det. .

Kichian det du skriver er at jeg skal lave det om til et datetime felt?
Avatar billede kichian Nybegynder
30. januar 2003 - 17:20 #5
popped bør være et datetime-felt, da det jo netop indeholder en dato. Ifg. din kode er det et nvarchar-felt.

Men ellers så

dim maaned = "200301"

sql = "where popped = cast(convert(nvarchar(6), '" & maaned & "', 112) as datetime)"
Avatar billede hjep Nybegynder
30. januar 2003 - 20:25 #6
Den virker med
where cast(convert(nvarchar(6), popped, 112) as datetime)='" & maaned & "'
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester