webForumDet fria alternativet

Datumformatering

3 svar · 447 visningar · startad av asp

aspMedlem sedan aug. 2002733 inlägg
#1

Hej.

Jag har en tabell med nyheter. Varje nyhet har ett långt datum, d.v.s. YYYY-MM-DD HH:MM:SS.

När jag vill hämta de dagar det finns nyheter i en månad skriver jag:

"SELECT DISTINCT Left(Datum,10) AS datte FROM Kalender WHERE Left(Datum,7) = '" & Left(datum,7) & "'"

Problemet är att servern har annat datumformat, det där förbannade DD/MM/YYYY eller om det är omvänd ordning... Jag har använt lcid = 1053 men detta påverkar tyvärr inte SQL-satserna (däremot övrig ASP kod).

Jag kan ju heller inte skapa en egen datumformatering (egen funktion) som jag skriver istället för Left(datum,10). Då klagar den.

Min fråga är om jag kan lösa detta på något annat sätt.

Peter SMedlem sedan dec. 20025 483 inlägg
#2

Eftersom du inte nämner vilket DBMS antar jag SQL Server:

SELECT DISTINCT cast(convert(datetime, datum, 120) as char(10)) AS datte FROM Kalender WHERE cast(convert(datetime, datum, 120) as char(7)) = '" & Left(datum,7) & "'
aspMedlem sedan aug. 2002733 inlägg
#3

Sorry :( Jag använder Access.

Peter SMedlem sedan dec. 20025 483 inlägg
#4
"SELECT DISTINCT Format(Datum, 'yyyy-mm-dd') AS datte FROM Kalender WHERE Format(Datum, 'yyyy-mm') = '" & Left(datum,7) & "'"
126 ms totalt · 3 externa anrop · v20260731065814-full.86db40fa
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
123 ms — hämta tråd, inlägg och bilagor (db)