Currently In my source file, i am getting date and time values like below.
2010-07-06T19:06:47
i want to put date in one variable and time in another one. Please let me know how to do this.
Assuming the combined date/time value is in variable $date-time...
<xsl:variable name="date" select="substring-before($date-time, 'T')"/>
<xsl:variable name="time" select="substring-after($date-time, 'T')"/>
The quickest and easiest way to do this would be to split/explode the variable into 2 pieces with the date in one and the time in the other.
Date Parsing means converting String into Date. Same Simple DateFormat codes are used to parsing date.
For example,
DateFormat formatter = new SimpleDateFormat("MM/dd/yy");<br/>
Date date = (Date)formatter.parse("07/16/87");<br/>
formatter = new SimpleDateFormat("dd-MMM-yy");<br/>
date = (Date)formatter.parse("16-Jul-87");<br/>
Source : Tutorial Data - Date and Time
Related
I have a column that has multiple comments along with some DateTime stamps. The example is like this:
abc#gmail.com - 03/03/2022 13:04:40
Documents Pending
Some random comment
I want to extract only the DateTime stamp from this column. I tried using to_char, and to_date functions in PostgreSQL, but none of it seems to work for me.
I also tried writing a regex to extract the DateTime stamp, but it didn't work.
What is the correct way to extract only DateTime from the above column? What would be the regular expression to extract the DateTime?
Thanks in advance.
Edit: I want to extract a date from a column like this:
abc#gmail.com - 12-Aug-2022
Documents Pending
Some random comment
How we can identify the month number or a date format from this comment?
You could use SUBSTRING() here:
SELECT col,
SUBSTRING(col FROM '\y\d{2}/\d{2}/\d{4} \d{2}:\d{2}:\d{2}\y') AS ts
FROM yourTable;
I'm trying to create a new custom column from a conditional statement and current date.
Next picture explains exactly what i need to get with power query.
An example of what I need from pseudocode is:
if [fecha fin de plazo]>=CurrentDate and [fecha CIERRE investigación]=null
then "string"
My biggest problem is I don't know how to extract the current date with PowerQuery.
You could try using,
if [fecha fin de plazo]>= DateTime.LocalNow() and [fecha CIERRE investigación]=null
then "string"
DateTime.LocalNow()
Using the DateTime.LocalNow you get the date and time of your system, the problem is at time to compareting the date value with the result of DateTime.LocalNow() becsause you need to compare only dates.
That's why It must use DateTime.Date. This fucntion returns the date component of DateTime.LocalNow().
if [date1] >= DateTime.Date(DateTime.LocalNow()) and [date2]=null
then "string"
You can get more information about this functions here:
DateTime.LocalNow()DateTime.Date()
I want to convert the string 20160101000000 into datetime format using expression. I have used below date function
TO_DATE(PERIOD_END_DATE),'MM/DD/YYYY HH24:MI:SS')
But my table file is not loading. My session and workflow gets succeed. My target and source is also flatfile.
I want to change the string 20160101000000 into MM/DD/YYYY HH24:MI:SS for loading data into my target table.
You need to give exact format that looks so that to_date function can understand that format and converts it into date.
TO_DATE(PERIOD_END_DATE,'YYYYMMDDHH24MISS')
So here your date looks like YYYYMMDDHH24MISS (20160101000000).
There is often confusion with the TO_DATE function... it is in fact for converting a string into a date and the function itself is to describe the pattern of the incoming date. Now if you want to convert a date field to a specified date format you must use TO_CHAR
I'm having trouble calling a date within an if statement. My date is, for example, "2001-08-05". I am trying to subset my data based on the date. So this is my code:
If ID = "Yes" and Date > 2001-08-05 then delete;
But this just doesn't do what I'm asking. I don't get an error, but it doesn't perform what I ask. I tried "2001-08-05"d. as well but this produced an error. Is there a certain way to read this format?
The proper format for a date constant in SAS is 'ddmmmyyyy'd, so:
if ID = 'Yes' and Date > '05Aug2001'd
You can use either single or double quotes to delimit the constant. The month name in the constant is case insensitive.
On a side-note, if you need to do a date-time constant in SAS, the format is 'ddmmmyyyy:hh:mm:ss'dt. Notice the suffix becomes dt rather than just d and there is a semi-colon between the date and time.
Or you could try to covert character to date
If ID = "Yes" and Date > input('2001-08-05',yymmdd10.) then delete;
I am using the DateFormat function to convert dates to this format: yyyy-mm-dd. This is the original format of the date: dd-mm-yyyy. Below is a snippet of the code:
<cfset newdate = #DateFormat(Trim(mydate), "yyyy-mm-dd")# />
The problem is that I get different results for different dates. For example:
If my original date is: 15-05-2013 (dd-mm-yyyy)
The result is: 2013-05-15 (yyyy-mm-dd)
However, if I change the input and:
The original date is: 01-05-2013 (dd-mm-yyyy)
The result is: 2013-01-05 (yyyy-dd-mm)
Any help or guidance as to what is wrong would be highly appreciated.
I disagree with the other answer. The real cause of the problem is that DateFormat is not designed to handle non-US date strings.
The standard CF date functions always use U.S. date parsing rules. That means when you pass in an ambiguous date string, like 01-05-2013, it is parsed according to U.S. English date conventions. In this case, month first ie "mm-dd-yyyy". So the result will always be January 5th, not May 1st.
In some cases you get lucky. With the string 15-05-2013, there is obviously no 15th month, so CF/java must swap the month and day automatically, rather than throwing an error. That is why it seems to handle some dd-mm-yyyy date strings correctly, but not others.
If you want to parse non-US date strings, you should use the LS (Locale Sensitive) date functions instead. However, according to the docs dashes ie "-" are not a standard date separator in most non-US locales: only Dutch and Portuguese (Standard). So you would either need to change the separator OR use one of those two locales when parsing the date:
lsDateFormat( myDate, "yyyy-mm-dd", "pt_PT")
Side note:
As an aside, DateFormat does expect a date object. However, like most functions in CF it is flexible enough to accept a date string as well. That allows you to use it as a lazy shortcut to convert from date string => date object => then back to (formatted) date string again. Using date objects is preferable (and you really should validate date strings as well) but that is another conversation altogether ...
The problem is that DateFormat expects a date object, and returns a string.
You're passing it a string, not a date. What you want to do is firstly turn your string (of 01-05-2013 etc) into a date object.
To do this I'd recommend using either ParseDateTime or LSParseDateTime, and/or LSDateFormat.
e.g.
<cfset originalDateString = "01-05-2013">
<!--- turn that into a Date --->
<cfset dateObject = ParseDateTime(originalDateString)>
<cfset newdateString = DateFormat(dateObject, "yyyy-mm-dd")>
Alternatively, if you know your string is always in a dd-mm-yyyy format, you could parse the string yourself, e.g. treat it as a list delimited by hyphens.
<cfset dd = listFirst(originalDateString, "-")>
<cfset mm = listGetAt(originalDateString, 2, "-")>
<cfset yy = listLast(originalDateString, "-")>