none
Check date and time RRS feed

  • Frage

  • Hello,

    i have a question i want to check new entries or modifed entries in a table where we stored account details.

    That means i checked the CreatedOn and ModifedOn fields and i will run an automtic task that check very 10 minutes the account table if there is a change.

    How can i do that ?

    I did the following

    select

     

    * from Account

    where

     

    CONVERT(datetime,convert(varchar(23),CreatedOn)) between

    CONVERT

     

    (datetime,convert(varchar(23),getdate()))

    and

     

    dateadd(minute,-20,getdate())

    order

     

    by CreatedOn

    But i get no result.

    Any ideas ?

    Thanks for help

    Peter

     

    Dienstag, 20. April 2010 09:57

Antworten

  • nochmal: dateadd(MINUTE,-20,getdate()) is kleiner als das aktuelle datum und muss deshalb vor das AND geschrieben werden!
    Bodo Michael Danitz - MCT, MCITP - free consultant - performance guru - www.sql-server.de
    Sonntag, 25. April 2010 21:56

Alle Antworten

  • That's probaly because
    convert(datetime,convert(varchar(23),getdate()))  >  dateadd(minute,-20,getdate())

     

     


    Bodo Michael Danitz - MCT, MCITP - free consultant - performance guru - www.sql-server.de

    Dienstag, 20. April 2010 10:41
  • Thanks for the information but it doesn't work.

    Dienstag, 20. April 2010 13:28
  • try

    between dateadd(minute,-20,getdate()) and convert(datetime,convert(varchar(23),getdate())) 

     


    Bodo Michael Danitz - MCT, MCITP - free consultant - performance guru - www.sql-server.de

     

     

    CONVERT

    Dienstag, 20. April 2010 13:34
  • Hallo Bodo,

    vielen dank für die antwort aber das klappt leider immer noch nicht.

    Ich bescreib nochmal kurz das ich erreichen möchte und zwar möchte ich alle neuen datensätze anzeigen die zwischen jetzt und -20 minuten erzeigt wurden.

    Hab das ganze auch mal versucht wennn ich miunte durch hour oder day ersetze wieder nix obwohl ich gestern und heute im testsystem datensätze angelegt habe.

    Gruss

    Peter

     

    Dienstag, 20. April 2010 13:48
  • das klappt bei mir:

    select

     

    dateadd(minute,-15,getdate())

    where

    dateadd

     

    (minute,-15,getdate())

    between

     

     

    dateadd(minute,-20,getdate())

    and

     

    CONVERT (datetime,convert(varchar(23),getdate()))

     


    Bodo Michael Danitz - MCT, MCITP - free consultant - performance guru - www.sql-server.de
    Dienstag, 20. April 2010 14:14
  • Das klappt bei mir auch.

    Allerdings möcht ich von der tabelle account ob in den letzten 20 minuten ein account angelegt wurde und zwar ambesten über das feld createdON und daran scheitere ich gerade.

    das ist mein query

    SELECT

     

    ContactNr, createdOn

    FROM

     

    Account

    WHERE

     

    convert(datetime,convert(varchar(25),CreatedOn,101)) between

    convert

     

    (datetime,convert(varchar(25),getdate(),101)) and dateadd(MINUTE,-20,getdate())

    Dienstag, 20. April 2010 14:32
  • nochmal: dateadd(MINUTE,-20,getdate()) is kleiner als das aktuelle datum und muss deshalb vor das AND geschrieben werden!
    Bodo Michael Danitz - MCT, MCITP - free consultant - performance guru - www.sql-server.de
    Sonntag, 25. April 2010 21:56