Jump to content
Skysnake

_DateDiff with native SQL timestamp

Recommended Posts

Skysnake
$sMsg = '2017-09-04 18:42:38'
_DateDiff ('h', $sMsg , _NowCalc() )

I could not find anything recent, so I thought I would put it here.

The '2017-09-04' date is a typical SQL timestamp. The _NowCalc() is a typical AutoIt date calculator.  Much to my surprise and delight, _DateDiff works correctly with these two dates without any prior conversion.

I am guessing that internally the separating characters (-/) get ignore. :)

Does save on additional code. :)

Skysnake


Skysnake

Why is the snake in the sky?

Share this post


Link to post
Share on other sites
Melba23

Skysnake,

Quote

I am guessing that internally the separating characters (-/) get ignore

See _DateTimeSplit for acceptable DTM formats.

M23


Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind._______My UDFs:

Spoiler

ArrayMultiColSort ---- Sort arrays on multiple columns
ChooseFileFolder ---- Single and multiple selections from specified path treeview listing
Date_Time_Convert -- Easily convert date/time formats, including the language used
ExtMsgBox --------- A highly customisable replacement for MsgBox
GUIExtender -------- Extend and retract multiple sections within a GUI
GUIFrame ---------- Subdivide GUIs into many adjustable frames
GUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView items
GUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeView
Marquee ----------- Scrolling tickertape GUIs
NoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxes
Notify ------------- Small notifications on the edge of the display
Scrollbars ----------Automatically sized scrollbars with a single command
StringSize ---------- Automatically size controls to fit text
Toast -------------- Small GUIs which pop out of the notification area

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • rudi
      By rudi
      Hello
      to retrieve the "MILLISECONDS" as well I modified some lines from "DATE.AU3".
       
      It's working fine, except that the function seems to return the UTC time stamp of the file checked?
       
       
      _NowCalc is returning local time (DST is active right now), so a direct "Age Check" against _NowCalc() is not possible.
       
      What's the best / safest approach to convert either UTC to "current local time incuding DST" or vice versa? _Date_Time_GetTimeZoneInformation() ???
      #include-once #include <Date.au3> $File="C:\temp\TimeTest.txt" $f=FileOpen($File,2+8) FileWriteLine($f,_NowCalc()) FileClose($f) _NowCalc() $Content=FileRead($File) ConsoleWrite('@@ Debug(' & @ScriptLineNumber & ') : $Content = ' & $Content & @CRLF & '>Error code: ' & @error & @CRLF) ;### Debug Console $TS=FileGetTSstringLastModifiedWithMS($File) ConsoleWrite('@@ Debug(' & @ScriptLineNumber & ') : $TS = ' & $TS & @CRLF & '>Error code: ' & @error & @CRLF) ;### Debug Console Func FileGetTSstringLastModifiedWithMS($_FullFilePathName) $h = _WinAPI_CreateFile($_FullFilePathName, 2, 2) $aTS = _Date_Time_GetFileTime($h) _WinAPI_CloseHandle($h) $aDate = _Date_Time_FileTimeToArray($aTS[2]) If IsArray($aDate) and UBound($aDate) > 6 Then Return StringFormat("%04d/%02d/%02d %02d:%02d:%02d.%03d", $aDate[2], $aDate[0], $aDate[1], $aDate[3], $aDate[4], $aDate[5], $aDate[6]) Else SetError(1) Return EndIf EndFunc ;==>FileGetTSstringLastModifiedWithMS  
      _FileGetTime() is not an option, as I need the milliseconds as well, as files may show up within the same second.
      <edit> It would be preferred to have a robust solution to use "local time", taking care of DST</edit>
      Regards, Rudi.
×