Date for every 3 months
Hi experts,
I have table with date and price . This table contains date for every day and corresponding price for that day. But I need to write a sql ,which outputs data for every three months .
Eg: If my data in a table starts from jan-15-2009 to jan-15-2010 , then I should output the data like below .
Jan-15-2009 20
APR-15-2009 40
JUL-15-2009 15
OCT-15-2009 5
JAN-15-2010 45
Request all to help me . :(
many many thanks in advance.
Regards,
Dirasa
An alternative that doesn't require dates to be generated (again, apart from the setup data - nb. I have incorporated some of the logic into the data setup subquery, in order to make the final sql statement easier to read. You would replace "trunc(p_period_begin - 1 + level)" in the period_start_date column with whatever your date column is called):
with param as (select trunc(sysdate) p_period_begin, 14 days_in_period from dual),
my_tab as (select p_period_begin,
days_in_period,
p_period_begin - 1 + level dt_col,
trunc(p_period_begin) + days_in_period*floor((trunc(p_period_begin - 1 + level) - p_period_begin)/days_in_period) period_start_date,
level amount
from param
connect by level <= add_months(p_period_begin, 12) - p_period_begin + 1)
-- end of data setup
select period_start_date,
sum(amount)
from my_tab
group by period_start_date
order by period_start_date;
PERIOD_START_DATE SUM(AMOUNT)
17/11/2009 105
01/12/2009 301
15/12/2009 497
29/12/2009 693
12/01/2010 889
26/01/2010 1085
09/02/2010 1281
23/02/2010 1477
09/03/2010 1673
23/03/2010 1869
06/04/2010 2065
20/04/2010 2261
04/05/2010 2457
18/05/2010 2653
01/06/2010 2849
15/06/2010 3045
29/06/2010 3241
13/07/2010 3437
27/07/2010 3633
10/08/2010 3829
24/08/2010 4025
07/09/2010 4221
21/09/2010 4417
05/10/2010 4613
19/10/2010 4809
02/11/2010 5005
16/11/2010 731
Similar Messages
-
Dyamic execution of report for every month and data through mail.
Dear Friends,
We are using ECC6.00 With EHP4. My requirement is to send the list of pending notifications with the list details as appearing in transaction QM10. Every month i am supposed to change the from date and to date for example 01.07.2010 to 31.07.2010 for the month July.
How can i make system calculate the from and to date for every month and send mail.
I can schedule the job using SM36 but how to make system calculate the from and to date dynamically for every month. i.e., for august system should calculate date 01.08.2010 to 30.08.2010 automatically as the next month is reached.
Experts help required.
Regards,
M.M1. You need to create a variant.
2. In this blank out the date and give all the required values which will filter for the Pending nofitications like notificaiton type, status, etc.
3. Then click save.
4. When you click save it will give you an option to save as variant.
5. Now in the Variant Attributes screen give the variant name/meanting
6. In the below you will get a "objects for selection screen)
7. In the same you will get the filed name calle d" notification date"/
8. Here Move the curson to the righ side you will find the selection variable, change to D-Dyanamic date calcuation and after that right side you will see one more column for the name of variable(input using only f4)
9. Here press f4,
10. then ypou get a pop up for selection varaible. there first Put "I: for current date and also 'I" for hte Current date +/- ??? days
in this give 30 days.
11. You can also use other function her.e
Now once the variant is created then you have to schedule a job for this program + variant in the sm36 and in the distribution list
you need to mention the email
check and let me know for the feedback
reg
dsk -
In ALV: Subtotals for every month, not for every day, possible?
Hello,
in my Alv-Grid I have a date column, which I want to use to generate subtotals. But I don't want to have a subtotal for every date, but for every month. Is there a method to accomplish this with subtotals? Thanks.
Regards, Lars.Hi Stembergg,
1. Its not possible with only date field.
2. However, if you have one EXTRA FIELD
which contains the Month
only then it is possible.
( You may hide this extra field if u don't
won't to display. But anyhow, u need to
modify your logic and the internal table
and accordingly populate the extra field)
3. There is contraint in alv
that we cannot use any function for any column value
for any claculation/grouping purpose.
Hope it helps.
Regards,
Amit M.
Message was edited by: Amit Mittal -
Get Last date of every Month in a year
Hi All,
I need to find last date of month for given year.
Example:
I used to pass date or year such as 2012 or 01-01-2012(DD-MM-YYYY)
SQL query needs to return last date of every month such as
31-01-2012
28-02-2012
31-03-2012
30-04-2012
31-12-2012
for above requirement i have written the following SQL
select rownum as row_count,
case when rownum=1 then last_day(to_date(add_months(trunc(to_date('01-01-2014','DD-MM-YYYY'), 'YYYY'), level - 1), 'DD-MM-YY')) end as Jan_month,
case when rownum=2 then last_day(to_date(add_months(trunc(to_date('01-01-2014','DD-MM-YYYY'), 'YYYY'), level - 1), 'DD-MM-YY')) end as Feb_month,
case when rownum=3 then last_day(to_date(add_months(trunc(to_date('01-01-2014','DD-MM-YYYY'), 'YYYY'), level - 1), 'DD-MM-YY')) end as mar_month,
case when rownum=4 then last_day(to_date(add_months(trunc(to_date('01-01-2014','DD-MM-YYYY'), 'YYYY'), level - 1), 'DD-MM-YY')) end as apr_month,
case when rownum=5 then last_day(to_date(add_months(trunc(to_date('01-01-2014','DD-MM-YYYY'), 'YYYY'), level - 1), 'DD-MM-YY')) end as may_month,
case when rownum=6 then last_day(to_date(add_months(trunc(to_date('01-01-2014','DD-MM-YYYY'), 'YYYY'), level - 1), 'DD-MM-YY')) end as jun_month,
case when rownum=7 then last_day(to_date(add_months(trunc(to_date('01-01-2014','DD-MM-YYYY'), 'YYYY'), level - 1), 'DD-MM-YY')) end as jul_month,
case when rownum=8 then last_day(to_date(add_months(trunc(to_date('01-01-2014','DD-MM-YYYY'), 'YYYY'), level - 1), 'DD-MM-YY')) end as aug_month,
case when rownum=9 then last_day(to_date(add_months(trunc(to_date('01-01-2014','DD-MM-YYYY'), 'YYYY'), level - 1), 'DD-MM-YY')) end as sep_month,
case when rownum=10 then last_day(to_date(add_months(trunc(to_date('01-01-2014','DD-MM-YYYY'), 'YYYY'), level - 1), 'DD-MM-YY')) end as oct_month,
case when rownum=11 then last_day(to_date(add_months(trunc(to_date('01-01-2014','DD-MM-YYYY'), 'YYYY'), level - 1), 'DD-MM-YY')) end as nov_month,
case when rownum=12 then last_day(to_date(add_months(trunc(to_date('01-01-2012','DD-MM-YYYY'), 'YYYY'), level - 1), 'DD-MM-YY')) end as dec_month
from dual connect by level <= 12 order by rownum;
Result
Jan_Month
Feb_Month
Mar_Month
Apr_Month
may_month
jun_month
jul_month
aug_month
sep_month
oct_month
nov_month
dec_month
1
31-01-2014
2
28-02-2014
3
31-03-2014
4
30-04-2014
5
31-05-2014
6
30-06-2014
7
31-07-2014
8
31-08-2014
9
30-09-2014
10
31-10-2014
11
30-11-2014
12
31-12-2012
Excepted Result:
am excepted result as single row such as
Jan_Month
Feb_Month
Mar_Month
Apr_Month
may_month
jun_month
jul_month
aug_month
sep_month
oct_month
nov_month
dec_month
31-01-2012
28-02-2012
31-03-2012
30-04-2012
31-05-2012
30-06-2012
31-07-2012
31-08-2012
30-09-2012
31-10-2012
30-11-2012
31-12-2012
Kindly give me suggestion to archive above result.
Thanks&Regards
SamiI agree with Marcus Pivot is the way to go about this... But on the other hand you almost solved it yourself.. just a max function was needed for your expected output:
select
max(case when rownum=1 then last_day(to_date(add_months(trunc(to_date('01-01-2014','DD-MM-YYYY'), 'YYYY'), level - 1), 'DD-MM-YY')) end) as Jan_month,
max(case when rownum=2 then last_day(to_date(add_months(trunc(to_date('01-01-2014','DD-MM-YYYY'), 'YYYY'), level - 1), 'DD-MM-YY')) end) as Feb_month,
max(case when rownum=3 then last_day(to_date(add_months(trunc(to_date('01-01-2014','DD-MM-YYYY'), 'YYYY'), level - 1), 'DD-MM-YY')) end) as mar_month,
max(case when rownum=4 then last_day(to_date(add_months(trunc(to_date('01-01-2014','DD-MM-YYYY'), 'YYYY'), level - 1), 'DD-MM-YY')) end) as apr_month,
max(case when rownum=5 then last_day(to_date(add_months(trunc(to_date('01-01-2014','DD-MM-YYYY'), 'YYYY'), level - 1), 'DD-MM-YY')) end) as may_month,
max(case when rownum=6 then last_day(to_date(add_months(trunc(to_date('01-01-2014','DD-MM-YYYY'), 'YYYY'), level - 1), 'DD-MM-YY')) end) as jun_month,
max(case when rownum=7 then last_day(to_date(add_months(trunc(to_date('01-01-2014','DD-MM-YYYY'), 'YYYY'), level - 1), 'DD-MM-YY')) end) as jul_month,
max(case when rownum=8 then last_day(to_date(add_months(trunc(to_date('01-01-2014','DD-MM-YYYY'), 'YYYY'), level - 1), 'DD-MM-YY')) end) as aug_month,
max(case when rownum=9 then last_day(to_date(add_months(trunc(to_date('01-01-2014','DD-MM-YYYY'), 'YYYY'), level - 1), 'DD-MM-YY')) end) as sep_month,
max(case when rownum=10 then last_day(to_date(add_months(trunc(to_date('01-01-2014','DD-MM-YYYY'), 'YYYY'), level - 1), 'DD-MM-YY')) end) as oct_month,
max(case when rownum=11 then last_day(to_date(add_months(trunc(to_date('01-01-2014','DD-MM-YYYY'), 'YYYY'), level - 1), 'DD-MM-YY')) end) as nov_month,
max(case when rownum=12 then last_day(to_date(add_months(trunc(to_date('01-01-2012','DD-MM-YYYY'), 'YYYY'), level - 1), 'DD-MM-YY')) end) as dec_month
from dual connect by level <= 12 order by rownum;
AND to avoid hardcoding you can also modify your query as :
select
max(case when rownum=1 then last_day(to_date(to_char(rownum),'MM')) end) as Jan_month,
max(case when rownum=2 then last_day(to_date(to_char(rownum),'MM')) end) as Feb_month,
max(case when rownum=3 then last_day(to_date(to_char(rownum),'MM')) end) as mar_month,
max(case when rownum=4 then last_day(to_date(to_char(rownum),'MM')) end) as apr_month,
max(case when rownum=5 then last_day(to_date(to_char(rownum),'MM')) end) as may_month,
max(case when rownum=6 then last_day(to_date(to_char(rownum),'MM')) end) as jun_month,
max(case when rownum=7 then last_day(to_date(to_char(rownum),'MM')) end) as jul_month,
max(case when rownum=8 then last_day(to_date(to_char(rownum),'MM')) end) as aug_month,
max(case when rownum=9 then last_day(to_date(to_char(rownum),'MM')) end) as sep_month,
max(case when rownum=10 then last_day(to_date(to_char(rownum),'MM')) end) as oct_month,
max(case when rownum=11 then last_day(to_date(to_char(rownum),'MM')) end) as nov_month,
max(case when rownum=12 then last_day(to_date(to_char(rownum),'MM')) end) as dec_month
from dual connect by level <= 12 order by rownum;
Easy way: (without connect)
SELECT LAST_DAY (TO_DATE (ROWNUM, 'MM')) AS Jan_month,
LAST_DAY (TO_DATE (ROWNUM + 1, 'MM')) AS Feb_month,
LAST_DAY (TO_DATE (ROWNUM + 2, 'MM')) AS Mar_month,
LAST_DAY (TO_DATE (ROWNUM + 3, 'MM')) AS Apr_month,
LAST_DAY (TO_DATE (ROWNUM + 4, 'MM')) AS May_month,
LAST_DAY (TO_DATE (ROWNUM + 5, 'MM')) AS Jun_month,
LAST_DAY (TO_DATE (ROWNUM + 6, 'MM')) AS Jul_month,
LAST_DAY (TO_DATE (ROWNUM + 7, 'MM')) AS Aug_month,
LAST_DAY (TO_DATE (ROWNUM + 8, 'MM')) AS Sep_month,
LAST_DAY (TO_DATE (ROWNUM + 9, 'MM')) AS Oct_month,
LAST_DAY (TO_DATE (ROWNUM + 10, 'MM')) AS Nov_month,
LAST_DAY (TO_DATE (ROWNUM + 11, 'MM')) AS Dec_month
FROM DUAL
Cheers,
Manik. -
i have a scenario where i need the data of last date of every month and if the month is current month need current date data...
is it possible using MDX...Hi Shashi,
According to your description, you want to return the last day for each month except current month, right?
In MDX, we can use ClosingPeriod function to return the member that is the last sibling among the descendants of a specified member at a specified level, here is a sample query for you reference.
with member [measures].[a]
as
ClosingPeriod ([Date].[Calendar].[Date],[Date].[Calendar].currentmember).name
select {[measures].[a]} on 0,
[Date].[Calendar].[Month].members on 1
from
[Adventure Works]
And then use the IIF function to evaluate if the month is current month. Please refer to the links below.
http://msdn.microsoft.com/en-us/library/ms145584.aspxhttp://msdn.microsoft.com/en-IN/library/ms145994.aspx
Regards,
Charlie Liao
TechNet Community Support -
Anyone else getting a message that they have almost used all of their data for the month?
We just got a message saying that we have used 90% of our data for the month and we are only 10 days into the billing cycle. I looked at our account on line and it says that we aren't even close to using our total data for the month. When does all of the stupid stuff stop? When I switched to Verizon 10 years ago, they were great. Great customer service, great plans, etc. Now that has gone away. The 4G service is an absolute joke. Where I used to have great service, there literally is none, and the phone won't even switch to 3G if it is in a bad area. I travel through a major city every day and I am amazed at how crappy the service is.
Now I'm getting messages that aren't even correct??? I have a lot of lines on my account and I don't want to go elsewhere, especially since I live in the country and Verizon is the only way to get decent internet service, but this is getting rediculous. I guess listening to the customers doesn't matter anymore as long as they get their money.Hi GeoffPrice
I'm sorry to hear your getting alerts that are incorrect. Let's get to the bottom of this. What zip code are you in? Are any other devices having the same issue on your account?
JoeL_VZW
Follow us on Twitter @VZWSupport -
have family plan with 250 data which I almost use each month. Going on vacation and will be on the road for two weeks. Should I up my data for a month then change back. Is it worth it or should I just run over and pay the extra 15 per gig?
Hello mlazaretti. Vacation time is awesome. (Especially a road trip!) Since you will be going out for two weeks, you never know if having extra data may come in handy. I highly recommend switching to the next tier up so this way you have more data. This way it is only $10.00 more versus $15.00, and you dont have to worry about overages. Then change back at the start of the next billing cycle.
If you need help making this change let us know! Have a safe trip!
NicandroN_VZW
Follow us on twitter @VZWSupport -
I need to collect the data for every rising edge a trigger perfoms. So far I could collect the data but it seems that it only collect the data in the start of triggering, but not continuously. I also want to put the data in an excel spreadsheet and automatically add new set of data when the next rising edge occur. Please help.
thanks a lot.LabWindows/CVI actually ships with a comprehensive set of examples for just about every area of programming you can use it in, including triggered analog data acquisition and ActiveX control of Microsoft Excel for data logging. Go to the following two directories on your computer to find respective examples for the two areas you are inquiring about:
1) C:\MeasurementStudio\CVI\samples\DAQ\Ai\DAQsingleBufExtTrig.PRJ
2) C:\MeasurementStudio\CVI\samples\activex\excel\excel2000dem.prj
Just make sure to study the examples carefully so that you fully understand the processes followed for triggered analog acquisition and the process of launching an ActiveX automation server for control, and then you should be able to merge the concepts shown in both of the example
s to make the application you desire.
Jason F.
Applications Engineer
National Instruments
www.ni.com/ask -
Min date for each month from list
Hi all,
I need to select only minimal date for each month from this sample query:
select date '2011-01-04' as adate from dual union all
select date '2011-01-05' as adate from dual union all
select date '2011-01-06' as adate from dual union all
select date '2011-02-01' as adate from dual union all
select date '2011-02-02' as adate from dual union all
select date '2011-02-03' as adate from dual union all
select date '2011-10-03' as adate from dual union all
select date '2011-10-04' as adate from dual union all
select date '2011-10-05' as adate from dual So the result should be:
04.01.2011
01.02.2011
03.10.2011How do I perform it?WITH dates
AS (SELECT DATE '2011-01-04' AS adate FROM DUAL
UNION ALL
SELECT DATE '2011-01-05' AS adate FROM DUAL
UNION ALL
SELECT DATE '2011-01-06' AS adate FROM DUAL
UNION ALL
SELECT DATE '2011-02-01' AS adate FROM DUAL
UNION ALL
SELECT DATE '2011-02-02' AS adate FROM DUAL
UNION ALL
SELECT DATE '2011-02-03' AS adate FROM DUAL
UNION ALL
SELECT DATE '2011-10-03' AS adate FROM DUAL
UNION ALL
SELECT DATE '2011-10-04' AS adate FROM DUAL
UNION ALL
SELECT DATE '2011-10-05' AS adate FROM DUAL)
SELECT TO_CHAR (MIN (adate), 'DD.MM.YYYY') adate
FROM dates
GROUP BY to_char(adate, 'YYYY.MM')
ADATE
03.10.2011
01.02.2011
04.01.2011 -
I've 1.85TB empty space on my Time Machine, but it only retains back-ups to the beginning of the previous month. I should be able to access weekly back-ups for every month before that until the disk is full. Any ideas why it deletes stuff older than a month?
Thanks, Rigby.If you are using Ethernet to connect your Mac to the Time Capsule, are you allowing at least 2-3 minutes for Time Machine to fully load when you open the application to see your backups?
If you are using wireless to connect, you may need to allow 8-10 minutes or longer for everything to fully load, depending on the speed of your wireless connection.
If you see only white time "bars" on the timeline at the right of the screen, you are seeing temporary backups. Permanent backups are displayed with purple "bars". -
Table that contains the change date for every cost element
Hi everyone!
Can anyone please help me find a table which contains the change date for every cost element?
Thanks,JessIf you basically want to find out if anyone changed the cost element, you need to use transaction KA05 and enter the cost element and controlling area.
This would actually bring you whatever field was changed and on double clicking give you the actual change and the date on which the change was made.
Problem is this change date is actually the creation date of a change document which is in the table CDHDR.Its not like the change date is on any master tables.
Hope this helps
Deepa -
User Profile Data for One Month in ST03N
Dear All,
I have one question for a similar requirement.
I want to see the User Profile data for last month (e.g.August)
I navigate through the same path as described by you.
ST03N- Expert Mode- Total (select period)-- User Profile (from analysis view)
even though I have selected One month period (August) ; I could see only the data for one week (1st August to 7th August)
Can you please advice how can I solve my purpose, if not this time but may be in future I should be able to see complete one month data.
Thanks in advance.
Best Regards,
JayeshDear Shailesh,
Thanks for the very prompt and accurate response.
However we have this job scheduled on monthly basis in our productive system, still there is no data avaialable.
Kindly advice.
Best Regards,
Jayesh -
Can i add data for current month only
can I add data for current month only?
Knowing your plan options is important marlingut! So that we are able to provide correct information, what make and model phone are you trying to add data too? Is this device already activated on your account?
Thank You,
MichelleL_VZW
VZW Support
Follow us on Twitter @VZWSUPPORT -
Generate all the dates for given month
Hi all,
How can I generate all the dates for given month? For example If I give Feb-2008 then it should display all the dates from 01/02/2008 to 29/02/2007
Thanks,
SujnanThis question was expanded (and answered) at
Monthly Report
You can also search for "all days in month". -
Query for getting data for every quarter for financial year
Hi,
My problem is I need to get the data for every quarter for financial year and also I need data for every week for financial year.
For example for financial year 2012-13, Apr2012 to Jun2012 would be Q1, Jul2012 to Sep2012 would be Q2 and so on. Total 8quarters should come upto Apr2013.
In the same way 1st apr 2012 to 7th apr 2012 would be week1, 8th apr to 15th apr would be week2 and son on. How to write a query for this scenario in oracle. Can anybody help me on this. very urgent..
Thanks in advance.lakmesri wrote:
Hi,
My problem is I need to get the data for every quarter for financial year and also I need data for every week for financial year.
For example for financial year 2012-13, Apr2012 to Jun2012 would be Q1, Jul2012 to Sep2012 would be Q2 and so on. Total 8quarters should come upto Apr2013.
In the same way 1st apr 2012 to 7th apr 2012 would be week1, 8th apr to 15th apr would be week2 and son on. How to write a query for this scenario in oracle. Can anybody help me on this. very urgent..
Thanks in advance.
How can you get 8 quarters within a year ? I'b be concerned here.
lakmesri wrote:
Hi,
In the same way 1st apr 2012 to 7th apr 2012 would be week1, 8th apr to 15th apr would be week2 and son on. How to write a query for this scenario in oracle. Can anybody help me on this. very urgent..
Thanks in advance.
First, that question is really not clearly asked. Second how could it be urgent ? You even did not tell us your Oracle version, did not show any tables descr, output sample nor any effort on your side to work on.
Nicolas.
Maybe you are looking for
-
CSS problems in CS4 with multiple images on a page...
I seem to have a ton of questions going in this forum, sorry if it's painful. Here's my latest issue.(DW CS4) I created a blank html page and linked a CSS file to it. I dropped a bunch of images into the body and wrapped them in a div with an id of "
-
I use Apache in Oracle 9i DB. I keep php in C:\oracle\ora92\Apache\Apache\htdocs. Why I can't run php. I must use driver, doesn't me?. Thank you! Sorry, I'm not well in English.
-
Mapping of OID custom attribute to ovd attribute with different names
Hi We have requirement where my oid attribute say attributename1 is to be mapped with OVD attribute attributename2. Is there any means by which i can do this mapping by default?
-
Fire fox just updated automatically and now it won"t connect to the internet. This is very frustrating as i need it for work. Fix this problem now
-
Difference between 1.20.01e und 1.20
My question is if there's any difference between these two firmwares. PS: Everbody who looks in this thread may have another look in my other thread concerning selected music on Zen Micro Photo cause I need help, it's urgent.