Group by time duration

I'm having an tasktable which has startdate,enddate,activity,subactivity etc.
Now I have to create a tasks by duration in mins report and group it by duration. I'm a newbee to oracle and I have done grouping by column. I dont know how to group it by range.
I have to calculate the responsetime=enddate-startdate and
The final output should be like this:
select responsetime,activity,subactivity
from task where responsetime is between the range
group by range.
The range being 0-15mins,15-30mins,30-60mins,1-2hrs etc.
Immediate Response would be appreciated.
Thanks,
Puja

Hi, i guess I think you are looking for this...
getting the resultset order of response range, if u need the group by you can add the sum function with with an alias name (same in all inner queries) to every inner queries and then....
HOPW YOU ARE LOOKING FOR THIS..... YOU CAN ADD ANY NUMBER OF REANGER HERE ...
select * from
select to_char(enddate-startdate,'sssss') as responsetime,activity,subactivity ,1 as renge
from task where to_char(enddate-startdate,'sssss') between (1 and 15)
union
select to_char(enddate-startdate,'sssss') as responsetime,activity,subactivity ,2 as renge
from task where to_char(enddate-startdate,'sssss') between (16 and 30)
union
select to_char(enddate-startdate,'sssss') as responsetime,activity,subactivity ,3 as renge
from task where to_char(enddate-startdate,'sssss') between (31 and 60)
union
select to_char(enddate-startdate,'sssss') as responsetime,activity,subactivity ,4 as renge
from task where to_char(enddate-startdate,'sssss') between (61 and 120)
) order by range ;
ALL THE BEST....
khaleel.

Similar Messages

  • How to calculate the time duration on a datetime column?

    Hi guys,
    I've done some search on this forum and everywhere else but I can't seem to get this right, at the beggining it sounded like something very simple to accomplish, for the instance with Excel but I'm struggling to get it to work with Crystal Reports on Microsoft Visual Studio 2008.
    I have a datetime column (SQL Server 2000) that I wanted to calculate the the time duration on the report group footer, unfortunatelly the built-in SUM function cannot be applied and I've tried several formulas that I've found on the internet without any luck. I'm using a datetime column to store only the time because I'm stuck with SQL Server 2000 which doesn't have a time data type.
    Would you guys know how to do it by any chance?
    Some sample code I've tried: http://www.minisolve.com/TipsAddUpTime.htm
    Thanks a lot,
    Paul
    Edited by: Paul Doe on Dec 12, 2009 5:41 PM
    Some sample data:
    EMPLOYEE     WORK HOURS
    =========     =================
    JOHN DOE      1900-01-01 01:00:05
    JOHN DOE      1900-01-01 00:20:00
    JOHN DOE      1900-01-01 01:30:15
    =========     =================
    HOURS WORKED: 02:50:20
    Edited by: Paul Doe on Dec 12, 2009 5:42 PM
    Edited by: Paul Doe on Dec 12, 2009 5:45 PM

    Guess what, by further testing the code on the website mentioned above I got it working.
    Pus, I needed to change the grouping on the code, so I had to come up with a way to update the formulas based on the groupping field.
    Considering "call_date" is the field that you are groupping by on the designer use the following code to update the formula:
    CrystalReportObj = new ReportDocument();
    CrystalReportObj.Load("C:\\reportfile.rpt");
    FieldDefinition FieldDef;
    //Get formula
    FormulaFieldDefinition FormulaDef1;
    FormulaDef1 = CrystalReportObj.DataDefinition.FormulaFields["SubHours"];
    //Get formula
    FormulaFieldDefinition FormulaDef2;
    FormulaDef2 = CrystalReportObj.DataDefinition.FormulaFields["subMinSec"];
    //Update the formula to work with the new grouping field,
    //this must be called first else will throw an exception
    FormulaDef1.Text = FormulaDef1.Text.Replace("call_date", "call_extension");
    FormulaDef2.Text = FormulaDef2.Text.Replace("call_date", "call_extension");
    //Get the new field we are grouping by
    FieldDef = CrystalReportObj.Database.Tables[0].Fields["call_extension"];
    //Replace current grouping field with the new one,
    //considering there only one group in the report, index 0
    CrystalReportObj.DataDefinition.Groups[0].ConditionField = FieldDef;
    Have fun.
    Edited by: Paul Doe on Dec 12, 2009 8:43 PM
    Edited by: Paul Doe on Dec 12, 2009 8:53 PM

  • Time Duration tracking

    Hi ALL,
    I need to get total time duration of my user in my application. I got maximum time duration he has spent for a month from the below sample query .
    SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss");
    Date parseFinalTime=null;
    String totalDuration = "";
    long totDuration=0;
    String siteDuration="";
    String masterquery = new StringBuffer("SELECT max(TSIE52_SESSION_DURATION)  from STSIE52_USER_SESSION ").toString();
    ResultSet subResultSet = getResultSet(connection, masterquery);
    while (subResultSet.next()) {
    parseFinalTime = sdf.parse(subResultSet.getString(1));
    totDuration =parseFinalTime.getTime();
    totalDuration = sdf.format(new Date(totDuration));
    System.out.println("siteDuration---------------->::" +totalDuration);
    }The output I got as below:
    siteDuration---------------->::00:00:24
    siteDuration---------------->::00:00:05
    siteDuration---------------->::00:00:09
    siteDuration---------------->::00:00:14
    siteDuration---------------->::00:51:33
    siteDuration---------------->::00:16:42
    siteDuration---------------->::00:00:05
    siteDuration---------------->::00:00:25
    siteDuration---------------->::00:00:05
    siteDuration---------------->::00:00:10
    siteDuration---------------->::00:00:09
    siteDuration---------------->::00:03:02
    siteDuration---------------->::00:00:18
    siteDuration---------------->::00:00:11
    I need to total all the times mentioned above and get the result as total duration time. How it is possible in java? Or is any other way that the desired output can be got from the sql query itself. Appreciate your help.

    JAMon does exactly this and more. Whatever label you pass to the start method later shows up in a report with the times aggregated (hits,total time,avg time, min time, max time and more). jamon is easy to use, open source and fast. For servlets you can use the jamon servlet filter and monitor these stats for each servlet without any code changes on your end (just add to your web.xml and make jamon.jar available).
    jamon 2 was just released this weekend and it has some new powerful capabilities.
    Having said that I would think your particular case would be better solved by the database with a group by clause.
    http://www.jamonapi.com
    Something like the following could work. Note I am also timing the code with jamon.
    import com.jamonapi.*;
    Monitor mon=MonitorFactory.start("myCode");
    long totDuration=0;
    String masterquery = new StringBuffer("SELECT max(TSIE52_SESSION_DURATION)  from STSIE52_USER_SESSION ").toString();
    ResultSet subResultSet = getResultSet(connection, masterquery);
    while (subResultSet.next()) {
    parseFinalTime = sdf.parse(subResultSet.getString(1));
    MonitorFactory.add("totalDuration", "duration",totDuration);
    mon.stop();

  • Predict Trip time duration from Pick up and Drop off Latitude and Longitude using Azure ML Studio

    I'm using Microsoft
    Azure Machine Learning Studio to create an experiment for predicting
    time duration of a trip by using
    a data set containing previous records of the trip time along with latitude and longitude of the pick up and drop off location.
    Can anyone help me out with whatregression model (or
    R-Script optional) should I use to train my model?

    Hi,
    Are you training with raw latitude/longitude? If so, you should try clustering the start/end points into groups. An easy way to do this is to take a decimal or two off the values. Otherwise, the algorithm is seeing
    many, many, unique pairs which may degrade the model performance.
    You will probably also want to use the
    Learning with Counts modules to summarize that lat/lon data because even with clustering, the features will still have high dimensionality. Here's some info on learning with counts:
    http://blogs.technet.com/b/machinelearning/archive/2015/02/17/big-learning-made-easy-with-counts.aspx
    Also, we did some experiments on similar data so if you want to read more about that see:
    http://blogs.technet.com/b/machinelearning/archive/2015/04/02/building-azure-ml-models-on-the-nyc-taxi-dataset.aspx
    Hope this helps!
    Margaret

  • How to find out the top 10 data loads based on time duration?.

    Hi,
    We are working on performance tuning. so we want to find out the top 10 loads which had run long time in date wise.
    We need the load start time and end time of the load process, Infosource and datatarget name.
    There are nearly 1000 loads, So it is very difficult to collect the load's timings in RSMO.
    Is there any another alternative to collect the top 10 loads based on time duration in date wise?
    Thanks & Regards,
    Raju

    Hi Gangaraju,
    You can install BI Statistics for getting these type of data.
    Or you check in RSDDSTAT or RSMDATASTATE_EXT or  table for the Load process time.
    Or goto t-code ST13 to get detailed analysis of a Process chain for a given period.
    Hope this helps.
    Regards,
    Ravi Kanth

  • How to display time duration (NOT dates) with an input mask in a JTable?

    Background: I am trying to display in a JTable, in two columns, the start position and time duration of an audio clip.
    They are stored as type float internally eg. startPosition = 72.7 seconds.
    However I wish to display on screen in the table in HH:mm:ss:S format. eg. 00:01:12:7. The user can edit the cell and input values to update the internal member fields.
    Problem: I am finding it very difficult to implement this - what with the interactions of MaskFormatter, DefaultCellEditor etc.
    Also using SimpleDateFormat and DateFormatter does not work as they insist on displaying the day, month, year also in the table cell.
    Taking the Swing Tutorial TableFTFEditDemo example as a template,
    (http://java.sun.com/docs/books/tutorial/uiswing/components/example-1dot4/index.html#TableFTFEditDemo)
    does anyone know how to do this?
    I can post my (buggy) modifications to the example code - if it would help.
    Appreciate any help.
    thanks,
    Anil

    Here are my modifications to the TableFTFEditDemo example. If you run it, you get an exception
    like java.lang.NumberFormatException: For input string: "18:00:03.500"
    The two modified classes are taken from the Tutorial and are listed below:
    =================
    * IntegerEditor is a 1.4 class used by TableFTFEditDemo.java.
    import javax.swing.AbstractAction;
    import javax.swing.BorderFactory;
    import javax.swing.DefaultCellEditor;
    import javax.swing.JFormattedTextField;
    import javax.swing.JOptionPane;
    import javax.swing.JTable;
    import javax.swing.JTextField;
    import javax.swing.KeyStroke;
    import javax.swing.SwingUtilities;
    import java.awt.event.ActionEvent;
    import java.awt.event.KeyEvent;
    import java.awt.Color;
    import java.awt.Component;
    import java.awt.Toolkit;
    import java.text.DateFormat;
    import java.text.NumberFormat;
    import java.text.ParseException;
    import java.text.SimpleDateFormat;
    import java.util.Calendar;
    import java.util.Date;
    import javax.swing.text.DateFormatter;
    import javax.swing.text.DefaultFormatterFactory;
    import javax.swing.text.MaskFormatter;
    import javax.swing.text.NumberFormatter;
    class TimeRenderer {
         float seconds;
         TimeRenderer(String str) {
              int hSec = Integer.parseInt(str.substring(0,2)) * 60 * 60;
              int mSec = Integer.parseInt(str.substring(2,4)) * 60;
              int sSec = Integer.parseInt(str.substring(4,6));
              float tSec = Integer.parseInt(str.substring(6,7))/10.0F;
              seconds = hSec + mSec + sSec + tSec;
    * Implements a cell editor that uses a formatted text field to edit Integer
    * values.
    public class IntegerEditor extends DefaultCellEditor {
         JFormattedTextField ftf;
         static Date zeroTime = new Date(0L);
         private boolean DEBUG = true;
         SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss.S");
         MaskFormatter maskFo = new MaskFormatter("##:##:##.#");
         protected MaskFormatter createFormatter(String s) {
              MaskFormatter formatter = null;
              try {
                   formatter = new MaskFormatter(s);
              } catch (java.text.ParseException exc) {
                   System.err.println("formatter is bad: " + exc.getMessage());
                   System.exit(-1);
              return formatter;
         public IntegerEditor(int min, int max) throws ParseException {
              super(new JFormattedTextField(new MaskFormatter("##:##:##.#")));
              ftf = (JFormattedTextField) getComponent();
              // Set up the editor for the cells.
              ftf.setFormatterFactory(new DefaultFormatterFactory(new DateFormatter(sdf)));
              ftf.setFocusLostBehavior(JFormattedTextField.PERSIST);
              // React when the user presses Enter while the editor is
              // active. (Tab is handled as specified by
              // JFormattedTextField's focusLostBehavior property.)
              ftf.getInputMap().put(KeyStroke.getKeyStroke(KeyEvent.VK_ENTER, 0), "check");
              ftf.getActionMap().put("check", new AbstractAction() {
                   public void actionPerformed(ActionEvent e) {
                        if (!ftf.isEditValid()) { // The text is invalid.
                             ftf.setBorder(BorderFactory.createLineBorder(Color.RED));
                             ftf.setBackground(Color.PINK);
                             ftf.postActionEvent(); // inform the editor
                        } else
                             try { // The text is valid,
                                  ftf.commitEdit(); // so use it.
                                  ftf.postActionEvent(); // stop editing
                             } catch (java.text.ParseException exc) {
         // Override to invoke setValue on the formatted text field.
         public Component getTableCellEditorComponent(JTable table, Object value,
                   boolean isSelected, int row, int column) {
              JFormattedTextField ftf = (JFormattedTextField) super
                        .getTableCellEditorComponent(table, value, isSelected, row, column);
              System.out.println("value:" + value);
    //          long milliseconds =(long) (Float.parseFloat(value.toString()) * 1000);
              long milliseconds =(long) (((Float) value).floatValue() * 1000);
              Date dt = new Date(milliseconds);
              ftf.setValue(dt);
              return ftf;
         // Override to ensure that the value remains an Integer.
         public Object getCellEditorValue() {
              JFormattedTextField ftf = (JFormattedTextField) getComponent();
              Object o = ftf.getValue();
              try {               
                   Calendar cal = Calendar.getInstance();
                   cal.setTime((Date)o);
                   float seconds = cal.getTimeInMillis()/1000.0F;
                   return sdf.format(o);
                   //return new Float(seconds);
              } catch (Exception exc) {
                   System.err.println("getCellEditorValue: can't parse o: " + o);
                   exc.printStackTrace();
                   return null;
         // Override to check whether the edit is valid,
         // setting the value if it is and complaining if
         // it isn't. If it's OK for the editor to go
         // away, we need to invoke the superclass's version
         // of this method so that everything gets cleaned up.
         public boolean stopCellEditing() {
              JFormattedTextField ftf = (JFormattedTextField) getComponent();
              if (ftf.isEditValid()) {
                   try {
                        ftf.commitEdit();
                   } catch (java.text.ParseException exc) {
              } else { // text is invalid
                   ftf.setBorder(BorderFactory.createLineBorder(Color.RED));
                   ftf.setBackground(Color.PINK);
                   return false; // don't let the editor go away
              return super.stopCellEditing();
    //=====================================================
    * TableFTFEditDemo.java is a 1.4 application that requires one other file:
    *   IntegerEditor.java
    import javax.swing.JFrame;
    import javax.swing.JDialog;
    import javax.swing.JPanel;
    import javax.swing.JScrollPane;
    import javax.swing.JTable;
    import javax.swing.table.AbstractTableModel;
    import java.awt.Dimension;
    import java.awt.GridLayout;
    import java.text.ParseException;
    * This is exactly like TableDemo, except that it uses a
    * custom cell editor to validate integer input.
    public class TableFTFEditDemo extends JPanel {
        private boolean DEBUG = false;
        public TableFTFEditDemo() throws ParseException {
            super(new GridLayout(1,0));
            JTable table = new JTable(new MyTableModel());
            table.setPreferredScrollableViewportSize(new Dimension(500, 70));
            //Create the scroll pane and add the table to it.
            JScrollPane scrollPane = new JScrollPane(table);
            //Set up stricter input validation for the integer column.
         //   table.setDefaultEditor(Float.class,
           //                        new IntegerEditor(0, 100));
         //If we didn't want this editor to be used for other
         //Integer columns, we'd do this:
         table.getColumnModel().getColumn(3).setCellEditor(
              new IntegerEditor(0, 100));
            //Add the scroll pane to this panel.
            add(scrollPane);
        class MyTableModel extends AbstractTableModel {
            private String[] columnNames = {"First Name",
                                            "Last Name",
                                            "Sport",
                                            "# of Years",
                                            "Vegetarian"};
            private Object[][] data = {
                {"Mary", "Campione",
                 "Snowboarding", new Float(5.7), new Boolean(false)},
                {"Alison", "Huml",
                 "Rowing", new Float(3.5), new Boolean(true)},
                {"Kathy", "Walrath",
                 "Knitting", new Float(2.9), new Boolean(false)},
                {"Sharon", "Zakhour",
                 "Speed reading", new Float(20.8), new Boolean(true)},
                {"Philip", "Milne",
                 "Pool", new Float(10.5), new Boolean(false)}
            public int getColumnCount() {
                return columnNames.length;
            public int getRowCount() {
                return data.length;
            public String getColumnName(int col) {
                return columnNames[col];
            public Object getValueAt(int row, int col) {
                return data[row][col];
             * JTable uses this method to determine the default renderer/
             * editor for each cell.  If we didn't implement this method,
             * then the last column would contain text ("true"/"false"),
             * rather than a check box.
            public Class getColumnClass(int c) {
                 Object obj = getValueAt(0, c);
                 System.out.println("getColumnClass.obj:" + obj);
                return obj.getClass();
            public boolean isCellEditable(int row, int col) {
                //Note that the data/cell address is constant,
                //no matter where the cell appears onscreen.
                if (col < 2) {
                    return false;
                } else {
                    return true;
            public void setValueAt(Object value, int row, int col) {
                if (DEBUG) {
                    System.out.println("Setting value at " + row + "," + col
                                       + " to " + value
                                       + " (an instance of "
                                       + value.getClass() + ")");
                data[row][col] = value;
                fireTableCellUpdated(row, col);
                if (DEBUG) {
                    System.out.println("New value of data:");
                    printDebugData();
            private void printDebugData() {
                int numRows = getRowCount();
                int numCols = getColumnCount();
                for (int i=0; i < numRows; i++) {
                    System.out.print("    row " + i + ":");
                    for (int j=0; j < numCols; j++) {
                        System.out.print("  " + data[i][j]);
                    System.out.println();
                System.out.println("--------------------------");
         * Create the GUI and show it.  For thread safety,
         * this method should be invoked from the
         * event-dispatching thread.
         * @throws ParseException
        private static void createAndShowGUI() throws ParseException {
            //Make sure we have nice window decorations.
            JFrame.setDefaultLookAndFeelDecorated(true);
            //Create and set up the window.
            JFrame frame = new JFrame("TableFTFEditDemo");
            frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            //Create and set up the content pane.
            TableFTFEditDemo newContentPane = new TableFTFEditDemo();
            newContentPane.setOpaque(true); //content panes must be opaque
            frame.setContentPane(newContentPane);
            //Display the window.
            frame.pack();
            frame.setVisible(true);
        public static void main(String[] args) {
            //Schedule a job for the event-dispatching thread:
            //creating and showing this application's GUI.
            javax.swing.SwingUtilities.invokeLater(new Runnable() {
                public void run() {
                    try {
                             createAndShowGUI();
                        } catch (ParseException e) {
                             // TODO Auto-generated catch block
                             e.printStackTrace();
    }

  • Why a customer or vendor group One Time can't using?

    Why a customer or vendor group One Time can't using with special G/L ? for example Donw payment or chque receipt
    Many thanks for any answer?

    Hi Blue,
    Please refer OSS notes 19638
    Hope this helps.
    Please assign points as way to say thanks

  • Time duration for Process.waitFor() to wait.

    Can we specify the time duration for the Process.waitFor() after which it resumes?
              Runtime rt=Runtime.getRuntime();
              Process ps=rt.exec("some command");
              ps.waitFor();
    Like here if rt.exec() is taking a lot of time to execute, the ps should wait for a certain period of time for rt to execute and if rt doesnt complete within the specified time then ps should resume.

    I don't know exactly what you are doing but what about: wait(long timeout);

  • Why need to give Function group at time of  table maintence generation

    Dear All,
    why need to give Function group at time of  table maintence generation
    Regards,
    Laxman  Sankhla

    Hi Laxman,
    The F1 help of the field says:
    Name of the function group, to which the generated maintenance modules will belong.
    Means the PBO & PAI modules of the screen will be created under this Functio group.
    Regards
    DKS

  • Record time duration for fax in vxml

    I am going to get the time duration used for fax sending in vxml:
    <transfer name="mycall" destexpr="'fax://' + phone_num" bridge="false" connecttimeout="120s" maxtime="180s" cisco-longpound="true" cisco-mailtoaddress="'xxxx'" >
    <catch event="telephone.disconnect.transfer">
    <assign name="mydur" expr="mycall$.duration"/>
    <goto next="#timeCount"/>
    </catch>
    </transfer>
    <var name="startTime" expr="new Date();"/>
    <var name="endTime"/>
    <form id="timeCount">
    <block>
    <assign name="document.startTime" expr="startTime.getTime();"/>
    <assign name="document.startTime" expr="Number(startTime);"/>
    <assign name="document.endTime" expr="new Date();"/>
    <assign name="document.endTime" expr="endTime.getTime();"/>
    <assign name="document.endTime" expr="Number(endTime);"/>
    <assign name="mydur" expr="document.endTime - document.startTime;"/>
    </block>
    </form>
    But mycall$.duration is 0 after transferring fax.
    And even if I use codes to count time duration, the duration, mydur, is about the same regardless of the number of pages sent.
    Is it possible to use vxml to record time duration of fax?
    Thank you!

    Paste the following Config:
    sh ver
    sh run
    debug of one call demonstrating the problem :
    debug voip ivr all
    debug vxml all

  • Time duration of events

    Hello,
    I am accessing an Oracle 10.2.0.1.0 Database
    I have the following tables
    CREATE TABLE BT_MAPPING
    ( "TAG_ID" NUMBER(6,0) NOT NULL ENABLE,
    "TAG_NAME" VARCHAR2(30 BYTE) NOT NULL ENABLE,
    "TAG_DESCRIP" VARCHAR2(100 BYTE),
    "TAG_SRC1" VARCHAR2(30 BYTE),
    "TAG_SRC2" VARCHAR2(30 BYTE),
    "TAG_GRP_ID" NUMBER(4,0),
    "TAG_TYPE" VARCHAR2(2 BYTE),
    "TAG_DB" NUMBER(12,6),
    "TAG_ZERO" NUMBER(12,6),
    "TAG_SPAN" NUMBER(12,6),
    "TAG_EU" VARCHAR2(10 BYTE),
    "TAG_MIN" CHAR(1 BYTE),
    "TAG_MAX" CHAR(1 BYTE),
    "TAG_AVG" CHAR(1 BYTE),
    "TAG_DCM" NUMBER(4,0),
    "TAG_TYPE_ID" NUMBER(4,0),
    "TAG_TOTAL" CHAR(1 BYTE)
    and
    CREATE TABLE MT_ANALOGUE
    ( "TAG_ID" NUMBER(6,0) NOT NULL ENABLE,
    "TAG_DATE" DATE NOT NULL ENABLE,
    "TAG_VALUE" NUMBER(12,6),
    "TAG_QUALITY" NUMBER(6,0),
    "TAG_ADJUST_FLAG" CHAR(1 BYTE)
    I need to run a query that would return the tag_id, tag_name, tag_descrip from the bt_mapping table and the tag_date, tag_value from the analogue table when the tag_value is over .10 for the tags that are named BR_FL00_NI to BR_FL14_NI. I have the following which seems to work.
    SELECT
    BT.TAG_ID "TAG_ID", BT.TAG_NAME "TAG_NAME", BT.TAG_DESCRIP "TAG_DESCRIP", MT.TAG_DATE "TAG_DATE", MT.TAG_VALUE "TAG_VALUE"
    FROM
    BT_MAPPING BT, MT_ANALOGUE MT
    WHERE
    MT.TAG_ID=BT.TAG_ID
    AND
    MT.TAG_VALUE &gt; 0.10
    AND
    (BT.TAG_NAME like 'BR_FL0%_NI'
    OR BT.TAG_NAME like 'BR_FL1%_NI'
    OR bt.tag_name = 'BR_FWL00_NI')
    ORDER BY BT.TAG_NAME, MT.TAG_DATE;
    this is a sample of what data the query returns
    TAG_ID                 TAG_NAME                             TAG_DESCRIP                         TAG_DATE                  TAG_VALUE
    40076                    BR_FL01_NI                            Filter #1 Turbidity                       2009-02-05:01:51          0.112088
    40076                    BR_FL01_NI                            Filter #1 Turbidity                       2009-02-05:01:52          0.10696
    40076                    BR_FL01_NI                            Filter #1 Turbidity                       2009-02-05:01:53          0.101343
    40076                    BR_FL01_NI                            Filter #1 Turbidity                       2009-02-05:08:56          0.108181
    40076                    BR_FL01_NI                            Filter #1 Turbidity                       2009-02-05:08:57          0.144567
    40076                    BR_FL01_NI                            Filter #1 Turbidity                       2009-02-05:08:58          0.160684
    40076                    BR_FL01_NI                            Filter #1 Turbidity                       2009-02-05:08:59          0.195116
    40076                    BR_FL01_NI                            Filter #1 Turbidity                       2009-02-05:09:00          0.179976
    40076                    BR_FL01_NI                            Filter #1 Turbidity                       2009-02-05:09:01          0.178266
    40076                    BR_FL01_NI                            Filter #1 Turbidity                       2009-02-05:09:02          0.176557
    40076                    BR_FL01_NI                            Filter #1 Turbidity                       2009-02-05:09:03          0.175336
    40076                    BR_FL01_NI                            Filter #1 Turbidity                       2009-02-05:09:04          0.174359
    40076                    BR_FL01_NI                            Filter #1 Turbidity                       2009-02-05:09:05          0.174359
    40076                    BR_FL01_NI                            Filter #1 Turbidity                       2009-02-05:09:06          0.169475But I am wondering how to query the times that the value is &gt; .10 with a time duration &gt;= 15min and to have the time the tag_value was &gt; 0.10 and the last time the value was &gt; 0.10 with the duration in a new column?
    Something like this
    TAG_ID     TAG_NAME      TAG_DESCRIP        TAG_START_DATE_OVER      TAG_START_VALUE    TAG_END_DATE_OVER      TAG_END_VALUE      DURATION
    40076       BR_FL01_NI      Filter #1 Turbidity     2009-02-05:08:56                     0.108181                      2009-02-05:09:06                 0.169475                     20minI have searched the forums, but didn't find anything that applied. It's possible that I was searching for the wrong phrase. If anyone can provide some help, it would be appreciated.
    Cheers
    Edited by: scada on Feb 24, 2009 10:21 AM

    I will look into analytic functions and your sample code to see if I can get the results. I did forget the sample data, again. I have now included some sample data. so what i need to query is when tag_value is &gt; 0.10 for greater than 15 minutes for tags with tag name like 'BR_FL0%_NI' OR like 'BR_FL1%_NI' OR tag_name = 'BR_FWL00_NI'. I also would need a column in that query to be the time duration that the tag_value was &gt; 0.10.
    thanks again for all the help
    bt_mapping
    CREATE TABLE BT_MAPPING
    ( "TAG_ID" NUMBER(6,0) NOT NULL ENABLE,
    "TAG_NAME" VARCHAR2(30 BYTE) NOT NULL ENABLE,
    "TAG_DESCRIP" VARCHAR2(100 BYTE),
    "TAG_SRC1" VARCHAR2(30 BYTE),
    "TAG_SRC2" VARCHAR2(30 BYTE),
    "TAG_GRP_ID" NUMBER(4,0),
    "TAG_TYPE" VARCHAR2(2 BYTE),
    "TAG_DB" NUMBER(12,6),
    "TAG_ZERO" NUMBER(12,6),
    "TAG_SPAN" NUMBER(12,6),
    "TAG_EU" VARCHAR2(10 BYTE),
    "TAG_MIN" CHAR(1 BYTE),
    "TAG_MAX" CHAR(1 BYTE),
    "TAG_AVG" CHAR(1 BYTE),
    "TAG_DCM" NUMBER(4,0),
    "TAG_TYPE_ID" NUMBER(4,0)
    Insert into bt_mapping
    values (40652,'BR_FL10_NI','Filter #10 Turbidity','BRIPSS03','BRIPSS04',0,'AI',60,0,0,'0','1','1','1',3,2);MT_ANALOGUE TABLE
    CREATE TABLE MT_ANALOGUE
    ( "TAG_ID" NUMBER(6,0) NOT NULL ENABLE,
    "TAG_DATE" DATE NOT NULL ENABLE,
    "TAG_VALUE" NUMBER(12,6),
    "TAG_QUALITY" NUMBER(6,0),
    "TAG_ADJUST_FLAG" CHAR(1 BYTE)
    INSERT INTO MT_ANALOGUE VALUES
    ('40652',to_date('25-feb-2009 10:00','dd-mon-yyyy hh24:mi'),'.018816','0','0');
    INSERT INTO MT_ANALOGUE VALUES
    ('40652',to_date('25-feb-2009 10:01','dd-mon-yyyy hh24:mi'),'.028816','0','0');
    INSERT INTO MT_ANALOGUE VALUES
    ('40652',to_date('25-feb-2009 10:02','dd-mon-yyyy hh24:mi'),'.029548','0','0');
    INSERT INTO MT_ANALOGUE VALUES
    ('40652',to_date('25-feb-2009 10:03','dd-mon-yyyy hh24:mi'),'.029304','0','0');
    INSERT INTO MT_ANALOGUE VALUES
    ('40652',to_date('25-feb-2009 10:04','dd-mon-yyyy hh24:mi'),'.028816','0','0');
    INSERT INTO MT_ANALOGUE VALUES
    ('40652',to_date('25-feb-2009 10:05','dd-mon-yyyy hh24:mi'),'.028571','0','0');
    INSERT INTO MT_ANALOGUE VALUES
    ('40652',to_date('25-feb-2009 10:06','dd-mon-yyyy hh24:mi'),'.029548','0','0');
    INSERT INTO MT_ANALOGUE VALUES
    ('40652',to_date('25-feb-2009 10:07','dd-mon-yyyy hh24:mi'),'.029304','0','0');
    INSERT INTO MT_ANALOGUE VALUES
    ('40652',to_date('25-feb-2009 10:08','dd-mon-yyyy hh24:mi'),'.028816','0','0');
    INSERT INTO MT_ANALOGUE VALUES
    ('40652',to_date('25-feb-2009 10:09','dd-mon-yyyy hh24:mi'),'.028816','0','0');
    INSERT INTO MT_ANALOGUE VALUES
    ('40652',to_date('25-feb-2009 10:10','dd-mon-yyyy hh24:mi'),'.030037','0','0');
    INSERT INTO MT_ANALOGUE VALUES
    ('40652',to_date('25-feb-2009 10:11','dd-mon-yyyy hh24:mi'),'.028327','0','0');
    INSERT INTO MT_ANALOGUE VALUES
    ('40652',to_date('25-feb-2009 10:12','dd-mon-yyyy hh24:mi'),'.029792','0','0');
    INSERT INTO MT_ANALOGUE VALUES
    ('40652',to_date('25-feb-2009 10:13','dd-mon-yyyy hh24:mi'),'.028327','0','0');
    INSERT INTO MT_ANALOGUE VALUES
    ('40652',to_date('25-feb-2009 10:14','dd-mon-yyyy hh24:mi'),'.029792','0','0');
    INSERT INTO MT_ANALOGUE VALUES
    ('40652',to_date('25-feb-2009 10:15','dd-mon-yyyy hh24:mi'),'.029304','0','0');
    INSERT INTO MT_ANALOGUE VALUES
    ('40652',to_date('25-feb-2009 10:16','dd-mon-yyyy hh24:mi'),'.028816','0','0');
    INSERT INTO MT_ANALOGUE VALUES
    ('40652',to_date('25-feb-2009 10:17','dd-mon-yyyy hh24:mi'),'.028816','0','0');
    INSERT INTO MT_ANALOGUE VALUES
    ('40652',to_date('25-feb-2009 10:18','dd-mon-yyyy hh24:mi'),'.029548','0','0');
    INSERT INTO MT_ANALOGUE VALUES
    ('40652',to_date('25-feb-2009 10:19','dd-mon-yyyy hh24:mi'),'.028816','0','0');
    INSERT INTO MT_ANALOGUE VALUES
    ('40652',to_date('25-feb-2009 10:20','dd-mon-yyyy hh24:mi'),'.029792','0','0');
    INSERT INTO MT_ANALOGUE VALUES
    ('40652',to_date('25-feb-2009 10:21','dd-mon-yyyy hh24:mi'),'.029548','0','0');
    INSERT INTO MT_ANALOGUE VALUES
    ('40652',to_date('25-feb-2009 10:22','dd-mon-yyyy hh24:mi'),'.029548','0','0');
    INSERT INTO MT_ANALOGUE VALUES
    ('40652',to_date('25-feb-2009 10:23','dd-mon-yyyy hh24:mi'),'.029304','0','0');
    INSERT INTO MT_ANALOGUE VALUES
    ('40652',to_date('25-feb-2009 10:24','dd-mon-yyyy hh24:mi'),'.028816','0','0');
    INSERT INTO MT_ANALOGUE VALUES
    ('40652',to_date('25-feb-2009 10:25','dd-mon-yyyy hh24:mi'),'.028816','0','0');
    INSERT INTO MT_ANALOGUE VALUES
    ('40652',to_date('25-feb-2009 10:26','dd-mon-yyyy hh24:mi'),'.029304','0','0');
    INSERT INTO MT_ANALOGUE VALUES
    ('40652',to_date('25-feb-2009 10:27','dd-mon-yyyy hh24:mi'),'.028816','0','0');
    INSERT INTO MT_ANALOGUE VALUES
    ('40652',to_date('25-feb-2009 10:28','dd-mon-yyyy hh24:mi'),'.028571','0','0');
    INSERT INTO MT_ANALOGUE VALUES
    ('40652',to_date('25-feb-2009 10:29','dd-mon-yyyy hh24:mi'),'.029304','0','0');
    INSERT INTO MT_ANALOGUE VALUES
    ('40652',to_date('25-feb-2009 10:30','dd-mon-yyyy hh24:mi'),'.029304','0','0');
    INSERT INTO MT_ANALOGUE VALUES
    '40652',to_date('25-feb-2009 10:31','dd-mon-yyyy hh24:mi'),'.017304','0','0');Edited by: scada on Feb 25, 2009 12:08 PM
    Edited by: scada on Feb 25, 2009 1:21 PM
    Edited by: scada on Feb 26, 2009 10:51 AM
    Edited by: scada on Feb 26, 2009 10:58 AM

  • No of questions in sccm 2012 70-243 exam and the time duration

    how many question in sccm 70-243 exam and time duration for the exam

    Hi,
    I can hardly remember but according to Daniel it was 3 hours and 60 questions.
    http://www.danielclasson.com/passed-the-70-243-administering-and-deploying-system-center-2012-configuration-manager-exam/
    Regards,
    Jörgen
    -- My System Center blog ccmexec.com -- Twitter
    @ccmexec

  • HT2486 How can you put same contact in a Group multiple times so that you can print the same mailing label multiple times?

    How can you put same contact in a Group multiple times so that you can print the same mailing label multiple times?

    Hello,
    Avery...
    https://discussions.apple.com/thread/2588943?start=0&tstart=0
    Or...
    http://www.belightsoft.com/products/labelsaddresses/overview.php

  • Report grouped by time not grouping by time

    Hi All,
       I have a report with one grouping level of a Time field and have it set to ascending "for each hour". When I run the report, it doesn't group by time instead it repeats by hour (12 am - 12am and then 12 am - 12 am) as if it's grouping by a date level which I do not have in my report. Previously this report had a date group level but I have removed the date grouping from my report.
    Any suggestion why this is happening? I am using CR2008.
    Thank you in advance,

    Are you sure its grouped by hour, go into change group and check, looks like its grouped by AM/PM which is the category next to hour. You might have selected the wrong category by accident.
    Ian

  • Can I change the time/duration in a batch way instead of one by one?

    I am using Premiere Pro CS3 and I would like to have 7 seconds per photo and not the default of 5 seconds.  I know you can do each photo separately, by would love a batch performance.  Thanks,  Michele

    Thank you so much for your reply.  I really did not try your approach because I had the question posted on another thread, and was given the following reply and it worked; therefore, just for your information - here it is:
    Huntrex
    98 posts since
    Aug 4, 2009
    1. Jul 5, 2010 9:15 PM in response to: photomom17
    Re: How do I change the time/duration of all clips from the default 5 seconds?
    Go to: Edit -> Preferences -> General. Then customize the "Still Image Default Duration". To get seven seconds per image, enter 210 frames if the project is 29.97fps or 168 frames if it is 24fps.
    In the future you can post to this forum, for older versions of Premiere.
    It worked great!

Maybe you are looking for

  • My mac keeps crashing what should i do, My mac keeps crashing what should i do

    My mac keeps crashing what should i do, My mac keeps crashing what should i do

  • Saving Sequence Diagrams in Sun Java Studio Enterprise 8

    I'm having trouble saving my sequence diagrams! I create the diagrams press ctrl-s, click the Save-All button, when I close and reopen SJSE8 some of my diagrams are missing! When I look in the directory it appears that they have been saved because I

  • Organizing pages in files

    It says that with PDF Pack you can "organize and arrange files in the right order" but does this allow me to organize and arrange the pages of the files in the right order?

  • Monthly Qty Sales Query

    Ran this Query below and it pulled up redundant data for Jan and June?!  Anyone know how to correct?  Should be just Jan 2010. Thanks, Mike SELECT T0.ITEMCODE, (SELECT SUM(T1.QUANTITY) FROM INV1 T1 with (NOLOCK) WHERE MONTH(T1.DOCDATE) = 1 AND T1.ITE

  • Approval for purchase order

    Hi all I have set approval for purchase oder , my problem is that when i create a purchase order using purchase order form it is going for the approval but when i created through code it is not going for the approval . Any solution for this. Thanks i