Avatar billede stigc Nybegynder
29. oktober 2001 - 23:58 Der er 5 kommentarer og
5 løsninger

Problemer med ukendt dato format.

Hvis man ikke kender datoformatet på SQL serveren, hvordan spørger man så efter poster ved hjælp af en dato?

Jeg går udfra det kan lykkes med \"datepart\", men er det den eneste vej omkring dette?
Avatar billede stigc Nybegynder
30. oktober 2001 - 00:03 #1
Kan man evt. via SQL og fra ASP spørger om aktuelle format?
Avatar billede stigc Nybegynder
30. oktober 2001 - 00:05 #2
eller er det med brug af convert man kommer rundt om dette. Alle meninger, råd og erfaringer er velkommen......
Avatar billede goz Nybegynder
30. oktober 2001 - 07:23 #3
du kan prøve at bruge dateformat.f.eks:

set dateformat MDY
select * from orders where OrderDate = \'07-10-1996\'
set dateformat DMY
select * from orders where OrderDate = \'07-10-1996\'





Avatar billede tmceu Praktikant
30. oktober 2001 - 07:30 #4
Du kan gøre følgende:

Kør \"select @@langid\"

Dette returnerer languageid, i mit tilfælde \"us_english\"

Derefter kører du \"sp_helplanguage \'us_english\'\" som returnerer et recordset, hvor det vigtigste felt for dig nok er dateformat, i dette tilfælde \"dmy\"
Avatar billede terry Ekspert
30. oktober 2001 - 08:11 #5
select * from yourtable where DateField = \'MM-DD-YYYY\'

You must use the US date format in SQL queries MM-DD-YYYY
Avatar billede pierrehusted Nybegynder
30. oktober 2001 - 08:13 #6
Du kan sagtens finde noget frem uden at kende datoformatet.

F.eks. på den her måde


SELECT * FROM tabelnavn where feltnavn1 >= convert(datetime, \'27-12-1972\',105) and feltnavn1 <= current_timestamp -2


Så får du alle poster efter 27/12-1972 og før for to dage siden.
Avatar billede terry Ekspert
30. oktober 2001 - 08:26 #7
why use datepart or anything like that. Doesnt a normal SQL work if you use MM-DD-YYYY (US date format) which is standard SQL?
Avatar billede aho_metier Nybegynder
04. november 2001 - 22:29 #8
Min erfaring er at, hvis du vil være 100% sikker så brug convert, ganske som pierrehusted 
skriver
Avatar billede klix Nybegynder
07. januar 2002 - 12:34 #9
Du kan altid bruge ansi standarden, som SQL serveren bruger internt, og det er altid \'yyyy-mm-dd\' f.eks. \'2002-01-07\'.
Avatar billede terry Ekspert
07. januar 2002 - 12:38 #10
yes you can use that method too, but the standard way in SQL is to use the U.S data format.
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
Computerworld tilbyder specialiserede kurser i database-management

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