Solved

Time compare

Posted on 2009-05-19
7
312 Views
Last Modified: 2012-05-07
I am trying to create a code set that will tell me how old reports are. For example. I have a field in the ACCESS db that is "report_date" and is a date/time. I want to break the reports down by
1. Less than 24 hours
2. 24-48 hours
3. 3-7 days
4. 7+ days

I know I can use datecompare, but I am having trouble with the less than 24 hours and the 24-48 hours part.

How can I take report_date < 24 hours and cull those records from the query and report_date between 24-48 hours with a date.
0
Comment
Question by:dudeatwork
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
7 Comments
 
LVL 19

Expert Comment

by:erikTsomik
ID: 24425221
try this code it works just fine
<cfset lTime1="2/18/2008 11:31:15 AM">
<cfset lTime2 = "2/15/2008 15:31:15 PM">
<cfif DateDiff("h",lTime1,lTime2) gt 24 and DateDiff("h",lTime1,lTime2) lt 48>
Hello
<cfelse>
Not Hello
</cfif>
0
 

Author Comment

by:dudeatwork
ID: 24425347
What if the table is broken to two columns report_date and report_time. Can I concatenate in the query report_date & report_time as mydate?
I am trying to get the condition in the cfquery for the record sets.
0
 
LVL 52

Accepted Solution

by:
_agx_ earned 500 total points
ID: 24425967
> Can I concatenate in the query report_date & report_time as mydate?

I believe Access stores date/time values as numbers internally. So just add them together. Then compare that value to whatever date and time value you need (24 hours ago, 24-28 hours, etc).  It should work fine, though it is probably the ideal method.  (I prefer to store date and time values in one field, because of exactly this type of scenario.)
<!--- create the time ranges you need --->
<cfset dateTimeNow = now()>
<cfset twentyFourHoursAgo = dateAdd("d", -24, dateTimeNow)>
<cfset twentyEightHoursAgo = dateAdd("d", -28, dateTimeNow)>
....
 
<cfquery name="lessThan24Hrs" datasource="YourDatasource">
	SELECT 	report_date, report_time, OtherColumns ...
	FROM 	yourTable
	WHERE	(report_date+ report_time) > <cfqueryparam value="#twentyFourHoursAgo#" cfsqltype="cf_sql_timestamp">
</cfquery>
 
<cfquery name="from24To28Hours" datasource="YourDatasource">
	SELECT 	report_date, report_time, OtherColumns ...
	FROM 	yourTable
	WHERE	(report_date+ report_time)	BETWEEN 
			<cfqueryparam value="#twentyFourHoursAgo#" cfsqltype="cf_sql_timestamp"> AND
			<cfqueryparam value="#twentyEightHoursAgo#" cfsqltype="cf_sql_timestamp">
</cfquery>

Open in new window

0
Resolve Critical IT Incidents Fast

If your data, services or processes become compromised, your organization can suffer damage in just minutes and how fast you communicate during a major IT incident is everything. Learn how to immediately identify incidents & best practices to resolve them quickly and effectively.

 
LVL 52

Expert Comment

by:_agx_
ID: 24425974
> though it is probably the ideal method.

... though it is probably NOT the ideal method.
0
 
LVL 27

Expert Comment

by:azadisaryev
ID: 24428353
@_agx_:  :) typos again! your code is getting records from 24 and 28 DAYS ago... and 28 should be 48 according to the question...

Azadi
0
 
LVL 52

Expert Comment

by:_agx_
ID: 24430175
Ack!   Thank you :)   I was focusing on the Access db differences.  Just a _slight_ difference ;-)

Thanks to azadi, the corrected date logic is:

<cfset twentyFourHoursAgo = dateAdd("h", -24, dateTimeNow)>
<cfset twentyEightHoursAgo = dateAdd("h", -28, dateTimeNow)>
0
 

Author Closing Comment

by:dudeatwork
ID: 31583154
Nice try though, thanks.
0

Featured Post

The Orion Papers

Are you interested in becoming an AWS Certified Solutions Architect?

Discover a new interactive way of training for the exam.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Hi, I will be creating today a basic tutorial on how we can create a Mail Custom Function and use it where ever we want. The main advantage about creating a custom function is that we can accommodate a range of arguments to pass to the Function and …
CFGRID Custom Functionality Series -  Part 1 Hi Guys, I was once asked how it is possible to to add a hyperlink in the cfgrid and open the window to show the data. Now this is quite simple, I have to use the EXT JS library for this and I achiev…
This video Micro Tutorial shows how to password-protect PDF files with free software. Many software products can do this, such as Adobe Acrobat (but not Adobe Reader), Nuance PaperPort, and Nuance Power PDF, but they are not free products. This vide…
There's a multitude of different network monitoring solutions out there, and you're probably wondering what makes NetCrunch so special. It's completely agentless, but does let you create an agent, if you desire. It offers powerful scalability …

688 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question