webForumDet fria alternativet

getdate()

5 svar · 160 visningar · startad av kristoffer

kristofferMedlem sedan juni 20001 266 inlägg
#1

Varför får jag olika resultat av nedanstående uttryck?

strSQL = "SELECT COUNT(*) FROM tabell WHERE mydate >= '" & date() "'"
strSQL = "SELECT COUNT(*) FROM tabell WHERE mydate >= GETDATE()"

------------------
http://www.tavlingar.se

[Redigerat av kristoffer den 30 jul 2001]

LarsGMedlem sedan dec. 200012 465 inlägg
#2

getdate returnerar både datum och tid, date returnerar enbart datum.

------------------
essentitia preter non sans multiplicandum

kristofferMedlem sedan juni 20001 266 inlägg
#3

Och det finns ingen funktion i sql som returnerar enbart datum?

------------------
http://www.tavlingar.se

LarsGMedlem sedan dec. 200012 465 inlägg
#4

Jodå, i sql finns det en funktion som heter current_date, men sql server har inte stöd för den. I stället så får man använda funktionen convert.

convert(char(12),getdate(),101)

Vilken värde du har på sista parametern beror på vilket default datumformat du har.

Dok finns här
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/tsqlref/ts_ca-co_2f3o.asp

------------------
essentitia preter non sans multiplicandum

kristofferMedlem sedan juni 20001 266 inlägg
#5

Tackar. Tror du det blir någon prestandavinst genom att göra så istället för att använda det första uttrycket i mitt översta inlägg?

------------------
http://www.tavlingar.se

LarsGMedlem sedan dec. 200012 465 inlägg
#6

Nej, jag har svårt tänka mig att det skulle bli någon prestandaskillnad.

------------------
essentitia preter non sans multiplicandum

Genererad på 488 ms · cache AV · v20260730165559-full.f96bc7eb