How to get the date of end of week max and its rows of a table

Hello
Table [temp2]
 
   id          name        dt
  123        a             2-mar-2010
  124        b            1-feb-2010
  125        c             3-apr-2010
  123        a             13-mar-2010
  125        c             13-mar-2010
  123        a             12-feb-2010
 
This table how to get this line by id - name (id and the name of the composite key) whose date is the date of last weekend (last Saturday).
for example, suppose to have IDs 123 values date February 12, 2010, 13-mar-2010 this date falls on the last Saturday 13-mar-2010, how to get the value of the line on Saturday last for all the unique id and the name?

So I wrote this but probably there a few traps...
select id,name,dt from (select id,name,dt,max(dt) over(partition by id,name) as 
max_date from temp2) t where dt=t.max_date and dt in ('3-apr-2010'
,'27-mar-2010','20-mar-2010','13-mar-2010')
Here I have spent in the in clause 4 last weekend dates manually (although either has been calculated by programming) in front.
Thank you

Here's another option:

SELECT     *
FROM
(
     SELECT     ID
     ,     NAME
     ,     MAX(CASE WHEN TO_CHAR(DT,'DY','NLS_DATE_LANGUAGE=ENGLISH') = 'SAT' THEN DT END) AS DT
     FROM     TEMP2
     GROUP BY ID, NAME
)
WHERE DT IS NOT NULL

It is always useful to provide the following information:

1. oracle version (SELECT * FROM V$ VERSION)
2. examples of data in the form to CREATE / INSERT commands.
3. expected results
4 explanation of the expected results (alias "business logic")
5. use.

 tags for #2 and #3. See FAQ (Link on top right side) for details.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                

Tags: Database

Similar Questions

  • How to get the Date, month, year of the DateTimePicker

    Hi, I am using the DateTimePicker.

    There are several question about this command:

    1. how to get the Date, month and year?

    -With the help of myDateTime.value, I get this string ' Wed May 08 14:45 ICT 2013 '-> I have to manually analyze this? Because I need in format yyyy/mm/dd. Or can set the format of dateTimePicker.value?

    2 format on dateTimePicker self (on the user interface) is d/m/YY, I can't change to another format?

    Thank you

    dateTimePicker.value return a QDateTime not a string.

    https://developer.BlackBerry.com/Cascades/reference/bb__cascades__datetimepicker.html#property-value

    See more:

    https://developer.BlackBerry.com/Cascades/reference/QDateTime.html#date

    https://developer.BlackBerry.com/Cascades/reference/QDate.html

    You can get

    day = dateTimePicker.value.date().day()
    month = dateTimePicker.value.date().month()
    year= dateTimePicker.value.date().year()
    dateYYYYMMDD = dateTimePicker.value.date().toString(Qt::ISODate)
    dateYYYYMMDD2 = dateTimePicker.value.date().toString("YYYY/MM/DD")
    dateYYYYMMDD3 = dateTimePicker.value.toString("YYYY/MM/DD")
    
  • How to get the date for the first Monday of each month

    Dear members,

    How to get the date for the first Monday of each month.

    I wrote the following code

    SELECT decode (to_char (trunc (sysdate + 30, 'MM'), 'DAY'), 'MONDAY', trunc (sysdate + 30, 'MM'), NEXT_DAY (trunc (sysdate + 30, 'MM'), "LUN")) FROM DUAL

    But he looks at complex bith.

    Abhishek

    Published by: 9999999 on 8 March 2013 04:30

    Use the IW format - it will make independent NLS solution. And all you need is truncated 7th day of each month using IW:

    select  sysdate current_date,
            trunc(trunc(sysdate,'mm') + 6,'iw') first_monday_the_month
      from  dual
    /
    
    CURRENT_D FIRST_MON
    --------- ---------
    08-MAR-13 04-MAR-13
    
    SQL> 
    

    Here is the list of the first Monday of the month of this year:

    with t as(
              select  add_months(date '2013-1-1',level-1) dt
                from  dual
                connect by level <= 12
             )
    select  dt first_of_the_month,
            trunc(dt + 6,'iw') first_monday_the_month
      from  t
    /
    
    FIRST_OF_ FIRST_MON
    --------- ---------
    01-JAN-13 07-JAN-13
    01-FEB-13 04-FEB-13
    01-MAR-13 04-MAR-13
    01-APR-13 01-APR-13
    01-MAY-13 06-MAY-13
    01-JUN-13 03-JUN-13
    01-JUL-13 01-JUL-13
    01-AUG-13 05-AUG-13
    01-SEP-13 02-SEP-13
    01-OCT-13 07-OCT-13
    01-NOV-13 04-NOV-13
    
    FIRST_OF_ FIRST_MON
    --------- ---------
    01-DEC-13 02-DEC-13
    
    12 rows selected.
    
    SQL> 
    

    SY.

  • How to get the dates of discontinuity

    If there is discontinuity in dates how we write the query...
    I need to get the dates and the dates of discontinuity.
    I / p:

    item_no first_date second_date
    1 January 1, 10 Aug 1, 10

    1-01 - 7.-10 1er January 11

    1 February 1, 11 1 July 11
    "
    "
    "
    o/p:

    1 1 January 10 01 - aug - 10

    1 02-aug-10 (first_date + 1) 31-aug-10(second_date-1) - dates of discontinuity

    1-01 - sep - 10 (second_date) 1st January 11

    1 January 2, 11 January 31, 11

    1 February 1, 11 1 July 11

    '
    '
    '
    Please let me know is possible
    SQL> select  *
      2    from  tbl
      3  /
    
            ID FIRST_DAT SECOND_DA
    ---------- --------- ---------
             1 01-JAN-10 01-AUG-10
             1 01-SEP-10 01-JAN-11
             1 01-FEB-11 01-JUL-11
    
    SQL> with t1 as (
      2              select  tbl.*,
      3                      lag(second_date) over(partition by id order by first_date) prev_second_date
      4                from  tbl
      5             ),
      6       t2 as (
      7               select  *
      8                 from  tbl
      9              union all
     10               select  id,
     11                       prev_second_date + 1,
     12                       first_date - 1
     13                 from  t1
     14                 where prev_second_date + 1 < first_date
     15             )
     16  select  *
     17    from  t2
     18    order by id,
     19             first_date
     20  /
    
            ID FIRST_DAT SECOND_DA
    ---------- --------- ---------
             1 01-JAN-10 01-AUG-10
             1 02-AUG-10 31-AUG-10
             1 01-SEP-10 01-JAN-11
             1 02-JAN-11 31-JAN-11
             1 01-FEB-11 01-JUL-11
    
    SQL>  
    

    SY.

  • How to get the data center moref moref VM in c# using

    Hi all

    Could someone tell how to get managedobjectreference of data center using the VM moref? or any other easy way is? If anyone has examples of code in c# please share with me?

    Thank you

    Vijaya

    You can get the data center in which the virtual machine resides by the following search:

    VM Moref-> Parent (vmFolder)

    Moref folder VM-> Parent (data center)

    Parent of the virtual computer object will always be the vmFolder and the vmFolder object will always be a data center.

    For more details on the model of article inventory of vSphere, take a look at this blog post - http://www.doublecloud.org/2010/03/vsphere-inventory-structure-deep-dive/

  • How to get the date in the exact day in the field when another?

    Hello

    Please help me how to get the day of the week using another date field.

    In fact, a field (week_day) has 1,2,3,4,5,6,7 here 1-, 2 - KILL like this.
    another field has the date. After this date, go to this particular week and need to pick up the date of the Etiquettemois above. It should be this week there himself.

    Thanks in advance!

    Kind regards
    Florian...

    Published by: Florian on October 29, 2010 03:07

    Maybe it's

    select trunc(date_field,'D') + week_field - 1 from table
    
  • Can someone show me how to get the data of this vi in four columns in a spreadsheet file.

    I'm trying to get the data into four columns on a worksheet. The data consists of two channels and two measures, a maximum voltage and a voltage after x seconds. I enclose the code. Any help would be great. Thank you.


  • How to get the date of Sunday of the week

    Hello
    I have a column date 'start_date', I need to create a report for all the weeks from Sunday, for example:

    I need to get the dates of the week in the form:

    mm/dd/aa-23/01/11, 01/16/11, 09/01/11 and so on...

    Help, please

    Thank you...

    Hello

    To find the last Sunday before or equal to start_date:

    SELECT     TRUNC ( start_date + 1
               , 'IW'
               ) - 1          AS week_start_date
    ...
    

    You can also use an expression like that in a GROUP BY clause.

    It's not you NLS parameters. Always ISO weeks start on Monday. Your week begins 1 day earlier, that is why the above expression is the + 1 and -1.
    (According to the parameters of the NLS)

    SELECT     TRUNC ( start_date
               , 'D'
               )          AS week_start_date
    ...
    

    could do the same thing, but I still have rocommend with "IW"; a few extra touches is not big thing to pay for a guarantee that it will still work.)

    I hope that answers your question.
    If not, post a small example of data (CREATE TABLE and INSERT statements) and the results desired from these data.

  • How to get the license for end user to the BT stack?

    How can I get a license of end-user for BT stack worm 5?

    Thank you!

    Talk with the manufacturer of the BT device. If you use the BT device with software Toshiba BT they should help you to get the update.

  • How to get the data from more than 100 domains in bulk API V2.0?

    Hi all

    I try to get data from Eloqua by APIs in bulk because of big data.

    But my Contact 186 fields (more than the majority of export limitation 100). I think I need to get all the data by 2 exports.

    How could I corresponds to 2 parts of a line and join together?

    I'm afraid that any change of data between 2 relative to exports 2 synchronizations would make different order.

    FOR EXAMPLE:

    1. any document is deleted or modified (if it matches do not filter) after obtaining data of the first part and before getting the second part, then everyone behind it would have back in part result.

    2. the data in some fields (included in both parts) are changed between the 2 synchronizations, then the values of the second part are more recent but the values of the first part are old.

    All suggestions should.

    Thank you

    Biao

    bhuang -

    I don't know that you ever go to work around the fact that things will change in your database while you are synchronizing the data. You have to have a way to create exceptions on the side of the synchronization.

    If I pushed Eloqua data to a different database and had to contend with the problem of matches change while I'm syncing, I would create a few additional columns in my database to track the status of synchronization for this folder. Or create another small table to track the data map. Here's how I'd do.

    1. I would have two additional columns: 'mapped fields 1' and '2 fields' mapped. They would be all two datetime fields.
    2. I would do only one set of synchronization both. First of all, synchronize all records for email + 99 fields. Do the entire list. For each batch, the datetime value of the lot in 'mapped fields 1' column.
    3. I would then synchronize all folders of email + other 86 fields. Repeat the entire list. For this batch of the datetime value of each batch in their 'mapped the 2 fields' column to now().
    4. For all records that had only 'mapped fields filled, 1' but' fields mapped 2' was empty, I would be re - run the second query Eloqua API using e-mail as the search value. If no results were returned, I would remove the line. Otherwise, update and the value 'mapped fields in 2' now
    5. For all the records that were only "fields mapped 2', I re - run against the first email query API Eloqua, fill in the missing data and define 'mapped the fields of 1' of the current datetime object." If the record has not returned, remove the line because it is probably not in the search longer.
    6. Finally, the value 'mapped fields 1' and 'mapped 2 fields' empty for all records, since you know that data is synchronized. This will allow you to use the same logic above on your next synchronization.

    Who is? It is not super clean, but it will do the job, unless your synchronizations take a ridiculous amount of time and your great data changes often.

  • How to get the data in the table if the date is less - than two months from the current date?

    Hi all

    I have a requirement in to retrieve table data. If any of the basic date in the column data.

    I have a date field (expiration date) I need to display data which expires two months.

    Please give me a solution.

    Concerning

    Shankar

    Hi, Shankar,

    Sorry, we don't know what you want.

    If you want something which, when executed on March 13, 2014, finds all the lines where expires and is located between March 13, 2014 and may 13, 2014, inclusive,

    SELECT *- or whatever the columns that you want to

    FROM table_x

    WHERE expire > = TRUNC (SYSDATE)

    Maturity AND< add_months="" (trunc="" (sysdate)="" ,="" 2)="" +="">

    ;

    I hope that answers your question.

    If not, post a small example data (CREATE TABLE and only relevant columns, INSERT statements) for all of the tables involved and also publish outcomes from these data.

    Explain, using specific examples, how you get these results from these data.

    Always say what version of Oracle you are using (for example, 11.2.0.2.0).

    See the FAQ forum: https://forums.oracle.com/message/9362002

  • How to get the data to uppercase

    Hi all

    I have a table with 100 columns, all character only (varchar2) type. In the data that have already inserted with tiny...

    Can here, my question is how I get all the data to uppercase only...

    I'm trying as select upper (t.*) in tablename t; He is in error... no idea please help me...

    Thanks and greetings

    Stéphane

    or you can create queries like this without having to type all of the columns;

    Select 'select'. listagg ('upper('|| c.COLUMN_NAME||')) (',',') within the Group (order 1) |' from TABLENAME'

    of dba_tab_cols c

    where c.TABLE_NAME = 'TABLENAME '.

    ----

    Ramin Hashimzade

  • How to get the date - 7 days (week)

    Hi all

    I am beginner in Java and JSP

    I'm JSP search form (VO) where I need to set a default value for the start_date - 7 days

    OK I get this display today date but how to get that displays a date-7 days?


    < %
    DateFormat df = new SimpleDateFormat ("JJ. MM.yyyy");
    Date date = new Date();
    String default = 'StartDate =' + df.format (new Date());
    % >

    ID
    Thank you

    Simple approach if you're not worried about leap years: -.

    Date todayMinus7 = new Date(System.currentTimeMillis() - 7 * 24 * 60 * 60 * 1000);
    

    Alternatively take a look at the GregorianCalendar class and the add() method.

  • How to get the date in the format dd/mm/yyyy?

    Hello
    for this query:
    > select to_date (to_char (sysdate), ' dd/mm/yyyy') of double;
    I wanted to get a date in the format dd/mm/yyyy, but this query is not in the right format to date.
    How to get it?

    Why you are converting a date (it's a date in your table, right) tank and back to a date. When you want to display a date a certain way, you use to_char and specify the mask format to display the date as to_char (sysdate, 'dd-mm-yyyy'). Internally, dates are stored as bytes 7, you use to_char only for display purposes.

  • How to get the data in the format specified for this table?

    Table:
    ID     NAME     DESC1     COUNTRY_ID     PERFORMANCE
    
    001     abc1     description 1     CON0000006       .67
    001     abc2     descr2            CON0000004       1232.87
    001     abc3     dsc3                     CON0000003        76798
    002     abc4     descr4               CON0000005        8787
    002     abc5     descr5              CON0000001        989.9989
    003     abc6     dfrer                     CON0000001        676.90
    003     abc7     ioioi                    CON0000001        6.8778
    004     abc8     lilli                   CON0000001         334344
    performance column is of type varchar2.

    I want data like this:
    ID     NAME     DESC1     COUNTRY_ID     PERFORMANCE
    001     abc1     description 1     CON0000006       00.67
    001     abc2     descr2            CON0000004       1232.87
    001     abc3     dsc3                     CON0000003        76798.00
    002     abc4     descr4               CON0000005        8787.00
    002     abc5     descr5              CON0000001        989.99
    003     abc6     dfrer                     CON0000001        676.90
    003     abc7     ioioi                    CON0000001        6.87
    004     abc8     lilli                   CON0000001         334344.00
    I use oracle 10g on windows 7.
    can you please how do I get the performance data in this format?

    Try something like:

    SQL> alter session set nls_numeric_characters='.,';
    
    Session altered.
    
    SQL> -- generating sample performance column
    SQL> with t as (
      2  select '.67' perf from dual union
      3  select '1232.87' from dual union
      4  select '76798' from dual union
      5  select '8787' from dual union
      6  select '989.9989' from dual union
      7  select '676.90' from dual union
      8  select '6.8778' from dual union
      9  select '334344' from dual
     10  )
     11  --
     12  -- actual query:
     13  --
     14  select perf
     15  ,      to_char(trunc(to_number(perf), 2), 'fm999900.00') perf2
     16  from   t;
    
    PERF     PERF2
    -------- ----------
    .67      00.67
    1232.87  1232.87
    334344   334344.00
    6.8778   06.87
    676.90   676.90
    76798    76798.00
    8787     8787.00
    989.9989 989.99
    
    8 rows selected.
    

Maybe you are looking for

  • Choose the UTF-8 character encoding

    I've had problems in the last two weeks, resulting in the page crashes, Force stops, restarts, and I have no idea of what was the cause. I have updated Flash and Java and Mac. DoubleClick/eBay javascript files have appeared on my desk, for unknown re

  • How can I change the path of the system permanently?

    using the path back change only lasts for the duration of the windows session.{Use windows vista with all upgrades so far} Thanks in advance.

  • Laser jet 1018 HP printer does not

    Original title: Laser jet 1018 HP printer does not I have a Laser jet HP 1018 and lost the disc printer if I can get any computer to be able to communicate with him. I downloaded the software that I thought I was able to run the printer, but nothing

  • ANTI-SPYWARE called Security essentials. __

    I am not very computer. But I tried to understand. Not having not much of chance. Protected Internet mode is also disabled. Ive tried to understand the security settings with no luck. What is the best way to reinstall the original state of this compu

  • Kernel Power Critical Error, event id 41

    Good afternoon I've had this problem for a little while now, and it's very frustrating. At random intervals my system restarts without warning.  I disabled automatic reboot in system protection settings and I read through the knowledge found here art