Solved

How to have report pull data for current date

Posted on 2008-10-30
7
682 Views
Last Modified: 2013-12-19
How do you set a report to pull data from current date (today) with out entering todays date?
SELECT so_.zone_code,so_.cust_ship_to_id,
               floor(substr(so_.end_time, 1, 2) / 8) end_time_shift, -- first 2 characters = hour
count(so_.end_time)
       FROM csi.so_pick_detail so_
   WHERE (so_.end_date = @variable ('Date'))
          
           
GROUP BY so_.zone_code,  so_.cust_ship_to_id,
                 floor(substr(so_.end_time, 1, 2) / 8)

Open in new window

0
Comment
Question by:Jbancr1
[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
  • 3
  • 3
7 Comments
 
LVL 27

Expert Comment

by:sujith80
ID: 22847893
You can use sysdate to get the current date.
See.
select sysdate from dual;

You may try the below suggestion. I have used a trunc function around the column to make sure that the time components are clipped. L
See whether this does for you.
SELECT so_.zone_code,so_.cust_ship_to_id,
               floor(substr(so_.end_time, 1, 2) / 8) end_time_shift, -- first 2 characters = hour
count(so_.end_time)
FROM csi.so_pick_detail so_
WHERE (trunc(so_.end_date) = trunc(sysdate) )
GROUP BY so_.zone_code,  so_.cust_ship_to_id,
                 floor(substr(so_.end_time, 1, 2) / 8)

Open in new window

0
 

Author Comment

by:Jbancr1
ID: 22848949
sujith80
I get an error message when I run the code you provided.
ORA-01003:  No statment parsed:-1003
0
 
LVL 74

Expert Comment

by:sdstuber
ID: 22849467
I recommend doing something like this instead of trunc on your end_date column,
if you have indexes on on the end_time column, writing the query like above will
prevent the use of those indexes, as illustrated below can use indexes.

sujith80's statement looks to be correct syntax though, did you miss a character in a cut-n-paste or something small like that?

  SELECT so_.zone_code,
         so_.cust_ship_to_id,
         FLOOR(SUBSTR(so_.end_time, 1, 2) / 8) end_time_shift,       
         COUNT(so_.end_time)
    FROM csi.so_pick_detail so_
   WHERE so_.end_date >= TRUNC(SYSDATE) AND so_.end_date < TRUNC(SYSDATE + 1)
GROUP BY so_.zone_code, so_.cust_ship_to_id, FLOOR(SUBSTR(so_.end_time, 1, 2) / 8)

Open in new window

0
Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 

Author Comment

by:Jbancr1
ID: 22849628
sdstuber

I get a different error message this time.

ORA-01861: literal does not match format string:-1861
0
 
LVL 74

Expert Comment

by:sdstuber
ID: 22849678
you must not be storing dates as dates.

what is end_date?  A string?  what is the format of it?

0
 

Author Comment

by:Jbancr1
ID: 22850303
FORMAT FOR END_DATE IS YYYY,MM,DD
0
 
LVL 74

Accepted Solution

by:
sdstuber earned 250 total points
ID: 22851057
I highly recommend you store dates as dates,

but, given your current setup,  try this...
  SELECT so_.zone_code,
         so_.cust_ship_to_id,
         FLOOR(SUBSTR(so_.end_time, 1, 2) / 8) end_time_shift,
         COUNT(so_.end_time)
    FROM csi.so_pick_detail so_
   WHERE so_.end_date = TO_DATE(SYSDATE, 'yyyy,mm,dd')
GROUP BY so_.zone_code, so_.cust_ship_to_id, FLOOR(SUBSTR(so_.end_time, 1, 2) / 8)

Open in new window

0

Featured Post

Free Tool: Site Down Detector

Helpful to verify reports of your own downtime, or to double check a downed website you are trying to access.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

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

I remember the day when someone asked me to create a user for an application developement. The user should be able to create views and materialized views and, so, I used the following syntax: (CODE) This way, I guessed, I would ensure that useā€¦
How to increase the row limit in Jasper Server.
Via a live example show how to connect to RMAN, make basic configuration settings changes and then take a backup of a demo database
This video shows how to copy a database user from one database to another user DBMS_METADATA.  It also shows how to copy a user's permissions and discusses password hash differences between Oracle 10g and 11g.

717 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