TroxyMedlem sedan mars 20041 505 inlägg Hejsan. Använder MSSQL. Kan man inte använda dayname-funktionen i ett case?
Den här frågan fungerar:
Select DayName(datum) FROM Artiklar
Men följande fråga ger "DAYNAME is not a recognized function name"
Select (Case DayName(datum) When 'Monday' Then 1 Else 0 End) as Test From Artiklar
:q
@ndersMedlem sedan juni 200032 969 inlägg ... Case When DayName(datum) = 'Monday' Then ...
mvh
TroxyMedlem sedan mars 20041 505 inlägg Det vill sig inte ändå :/
Får fortfarande ett meddelande om att funktionen inte finns...
@ndersMedlem sedan juni 200032 969 inlägg Är du säker på att den översta frågan fungerar?
Varken min SQL Server 2000 eller 2005 har en aning om vad DayName är för något överhuvudtaget.
TroxyMedlem sedan mars 20041 505 inlägg Ja, det är konstigt.
Den här frågan ger Thursday som svar.
Select DayName(GetDate()) As Dag
@ndersMedlem sedan juni 200032 969 inlägg Hmm
Vilken version av SQL Server använder du?
(Jag kan förstå att den frågan fungerar i MySQL, men i SQL server tror jag du måste använda DatePart()...)
TroxyMedlem sedan mars 20041 505 inlägg SQL Server 2000.
Jag kan ju använda DatePart(w,GETDATE()) också. Men då får jag som svar att torsdag är dag 5 i veckan. Går det att få svenska veckor på något sätt?
@ndersMedlem sedan juni 200032 969 inlägg Borde gå att få som du vill med SET DATEFIRST.
http://msdn2.microsoft.com/en-us/library/ms181598.aspx
- - - - -
Men hur DayName() kan fungera på din SQL Server 2000 men inte på min är en gåta (om det inte är en egen User defined function på din server).
TroxyMedlem sedan mars 20041 505 inlägg Kan de bero på att jag ställer frågorna i Enterprise Manager?
@ndersMedlem sedan juni 200032 969 inlägg Aha, ja, där hände det ju lite konstigheter. :)
EM gör ju också en översättning, så detta borde i så fall fungera:
Select (Case When { fn DAYNAME(GETDATE()) } = 'Monday' Then 1 Else 0 End) as Test From Artiklar