Avatar billede hugopedersen Nybegynder
16. november 2001 - 12:03 Der er 7 kommentarer og
1 løsning

Findes der en DATESERIAL

Jeg kan ikke finde oplysninger om DATESERIAL i min SQL 2000 book online - findes den ikke i SQL ?
Jeg ønsker at bruge den til at lave en dato om til et tal så jeg kan lave beregninger på det.
Avatar billede bennytordrup Nybegynder
16. november 2001 - 12:10 #1
Den findes ikke, men den kan laves

CREATE FUNCTION DateSerial (@Year as int, @Month as int, @Day as int) 
RETURNS datetime AS 
BEGIN
    Declare @iYear    int
    Declare @iMonth    int
    declare @iDay        int
    select @iYear = @Year
    select @iMonth = @Month
    select @iDay = @Day
    while @iMonth>12 begin
        SELECT @iYear = @iYear+1
        SELECT @iMonth = @iMonth-12
    end
    Return ( Convert(datetime, Str(@iYear, 4) + \'.\' + Cast(@iMonth as nvarchar(2)) + \'.\' + Cast(@iDay as nvarchar(2)) , 102))
END
Avatar billede hugopedersen Nybegynder
16. november 2001 - 12:18 #2
Det er sådan set meget godt, men så skal jeg jo lige pludselig til at finde ud af at lave sådan en funktion også :-)

Er der en anden måde hvor man kan finde afstanden i dage mellem 2 datoer direkte i en stored procedure.
Avatar billede terry Ekspert
16. november 2001 - 12:22 #3
Datediff
Avatar billede bennytordrup Nybegynder
16. november 2001 - 12:25 #4
Det, jeg sendte yderligere, ville give dig funktionen, hvis du udførte den i Query Analyzer på den database, hvor den skal bruges.

Jeg bruger den til at lave datosammenligninger i forhold til datofelter i databasen.
Avatar billede bennytordrup Nybegynder
16. november 2001 - 12:25 #5
Hvad beregninger skullle du bruge?
Avatar billede hugopedersen Nybegynder
16. november 2001 - 12:36 #6
Det var egentlig noget så simpelt som at DateDiff kan gøre det i første omgang.

OK med funktionen - det kan være at jeg skal til at se på mulighederne der er i sådan noget.
Avatar billede terry Ekspert
16. november 2001 - 12:40 #7
Hi hugopedersen> Looking at your original question I wouldnt have used datediff, you wanted to convert a date to a number. Only when I saw your comment 12:18 did I think you could use the datediff, so your question was a bit misleading

mvh
terry
Avatar billede hugopedersen Nybegynder
16. november 2001 - 12:44 #8
Ja det kan man måske godt sige - jeg tænke blot lidt videre i mit projekt hvor jeg måske får brug for at lave hver dato om til et tal.
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