Weird behavior of SQL query

Hi friends ,
Today I have faced the one problem . I have the simple sql query :
select sum(real_dt) x from final group by alt_tip  "Final" is a view which is bound with other views .Those views are bound with other views and tables also . Every table which take part in this query are static. When I run this query I see certain result , but when I need to replay query (for example 10 seconds later) I see different result. And again different result and again dif. result.There are no jobs ,and I am the only user who has connected to this database.
What is a possible reason ???
Edited by: Radrigez on 26.09.2011 4:50

There is NO reason for the two queries to return any different results.
select sum(x) from (
select sum(real_dt) x,alt_tip from final group by alt_tip)
select sum(x) from (
select sum(real_dt) x from final group by alt_tip)The first query fetches ALT_TIP values in the subquery and then discards them.
The second query does not fetch them.
The GROUP BY ALT_TIP is completely unnecessary if you really want only a SUM(X) --- because you are requesting for a single row that is the sum of all REAL_DT values from FINAL.
What I do not understand is the listing of
24804560.57 the first time
24823488.57 2..
24823488.57 3..
24823488.57 4..
24823488.57 5..
24823488.57 6..Are you implying that you run the same query more than once and the result in the second execution is different from the result in the first execution ? If data isn't changing, have you evaluated if there is any FUNCTION that is dependent on external references -- e.g. a FUNCTION that is dependent on SYSDATE (or a truncation of SYSDATE) or is dependent on some other attributes (TERMINAL_ID, PROCESS_ID, SESSION_ID) etc ? (The question about VPD also relates to such possibilities).
Hemant K Chitale

Similar Messages

  • Different LOV behavior between SQL query data model and data template

    I have noticed different behavior when using parameters linked to list of values (LOV) of type menu with the multiple selection option enabled and a SQL query data model vs a data template. Here's the example because that first sentence was probably really confusing.
    SQL Query:
    select
    plmc.MonthCode, plmc.ModalityDim, plmc.ModalityName,plmc.RegionDim
    from
    DataOut.dbo.PatientLabMonthlyCross plmc
    where
    plmc.MonthCode = 200202
    and plmc.RegionDim = 1209
    and 1 =
    case
    when coalesce(:modalityDim,null) is null
    then 1
    else
    case
    when plmc.ModalityDim in (:modalityDim)
    then 1
    else 0
    end
    end
    Putting BI Publisher into debug mode, defining a data model of type SQL Query, defining a parameter called :modalityDim linked to a LOV that allows multiple selections, and selecting a couple of values from the LOV the output of the prepared statement is:
    [081607_122647956][][STATEMENT] Sql Query : select
    plmc.MonthCode,
    plmc.ModalityDim,
    plmc.ModalityName,
    plmc.RegionDim
    from
    DataOut.dbo.PatientLabMonthlyCross plmc
    where
    plmc.MonthCode = 200202
    and plmc.RegionDim = 1209
    and 1 =
    case
    when coalesce(?,?,null) is null
    then 1
    else
    case
    when plmc.ModalityDim in (?,?)
    then 1
    else 0
    end
    end
    [081607_122647956][][STATEMENT] 1:6
    [081607_122647956][][STATEMENT] 2:7
    [081607_122647956][][STATEMENT] 3:6
    [081607_122647956][][STATEMENT] 4:7
    [081607_122654713][][EVENT] Data Generation Completed...
    [081607_122654713][][EVENT] Total Data Generation Time 7.0 seconds
    Note how the bind variable :modalityDim was changed into two parameters in the prepared statement.
    When I use this same SQL Query in a data template the output is:
    [081607_012113018][][STATEMENT] Sql Query : select
    plmc.MonthCode,
    plmc.ModalityDim,
    plmc.ModalityName,
    plmc.RegionDim
    from
    DataOut.dbo.PatientLabMonthlyCross plmc
    where
    plmc.MonthCode = 200202
    and plmc.RegionDim = 1209
    and 1 =
    case
    when coalesce(?,null) is null
    then 1
    else
    case
    when plmc.ModalityDim in (?)
    then 1
    else 0
    end
    end
    [081607_012113018][][STATEMENT] 1:'6','7'
    [081607_012113018][][STATEMENT] 2:'6','7'
    [081607_012113574][][EXCEPTION] java.sql.SQLException: Syntax error converting the nvarchar value ''6','7'' to a column of data type int.
    Note the exception because it is trying to convert the multiple parameter values.
    Am I doing something completely wrong here? I really need to use a data template because I will need to link a couple of queries together from different database vendors.
    -mark

    This is for 10.1.3.4 - because in 11g every SQL query is automatially part of a data model.
    In 10g SQL query is for simple unrelated SQL queries.
    If you need to use advance features such as:
    a) multiple SQL queries that are joined in master-detail relation ships
    b) before/after report triggers
    Then you will need to use the data template, which is an XML description
    of the queries, links, and PL/SQL calls.
    hope that helps,
    Klaus

  • CrystalRpts - Excel Data source, SQLServer2005 table. SQL Query behavior?

    Greetings - What should be a simple report (with Excel 2007 spreadsheet as primary data source linking to a SQLServer 2005 table ) returns incorrect results.  Query designed to select data from SQL Table with  'DATES >=' certain date, but data returned ignores the DATE qualifier.
    Running DATE query manually against the SQL Table proves the data is correct. 
    Anyone notice problems with SQL Query behavior when mixing data sources?  Thanks.

    Hello,
    Take the SQL that works outside of CR and then create a new report and add all data sources. Now use a Command Object and paste in your SQL. YOu may have to play with adding each data source in a different order. If that works great if not you'll have to figure out a way to get all the data into one source.
    I believe MS SQL Server can link multiple data sources and types. Check SQL Help file for more info it it is possible.
    Thank you
    Don

  • How to get cm:search to use the max attribute when creating the SQL query?

    When we use the max attribute in the cm:search tag, it does not seem to honor the max attribute when creating the SQL query. However, the result returned from the tag is limited to the number specified by the max attribute. Then the tag seems to work as intended, but the performance will be sub optimal when the SQL query returns unnecessary rows to the application.
    We use the cm:search tag to list the latest news (ordered by date), and with the current implementation we have to expect a decrease in performance over time as more news is published. But we can’t live with that. We need to do the constraint in the SQL query, not in the application.
    The sortBy attribute of cm:search is translated to “order by” in the SQL query, as expected.
    Is it possible to get cm:search to generate the SQL query with an addition of “where rownum <= maxRows”?

    Hi Erik,
    The behavior of a repository in regards to the search tag's max results parameter is dependent on the underlying repository's implementation. That said, the OOTB repository in WLP does augment the generated SQL to limit the number of rows returned from the database. This is done in the parsing logic. This behavior may differ with other repository implementations.
    -Ryan

  • APEX,PDF's, BI Publisher and SQL Query returning SQL code..

    I don't know if I should be posting this in this Forum or the BI Publisher forum, so I am posting in BOTH forums..
    I love APEX, let me say that first.. And appreciate the support offered here by the group, but am running int a confusing issue when BI Publisher tries to build a report from the above type APEX report..
    Here is my dilemma:
    I have a number of reports that are part of a Oracle package. They return an SQL Query back to a reports region on a page. I am having to deal with the column names returned are col01, col02..
    The issue I have is, when building the Application Level query to download the XML sample from in building RTF layouts in Word, you can not use this code, you MUST use a standard SQL Select.
    I have taken the sql from the function returning sql, and copied into the application query, supplying the required data values for bind variables being used in the query.
    An XML file is produced, and I use this to build the RTF format file that I load back into APEX and try to use it for the PDF rendering of the report. I can view the output as a PDF in the Word add on, but when I try using it with the report, it is returning an empty PDF file.
    Can anyone tell me what error log files on the bi publisher side I can look at to see what error is happening?
    Thank you,
    Tony Miller
    UTMB/EHN
    Title adjusted to allow people to know what I am talking about...
    Message was edited by:
    Tony Miller

    Tony,
    You can find the log as follows:
    - go to http://[yourserver]:[yourport]/em
    - logon to OC4J EM: oc4jadmin/[yourpassword]
    - click on "logs" at the bottom of the page
    - in the hgrid/tree, expand OC4J->home->Application
    xmlpserver
    - click on view log icon
    You can also observe what's going on in BI Publisher
    by going to the command prompt from where you started
    it.
    Or, as a third option, you can locate the file on
    your file system, depending on your setup, the path
    would be something similar to this:
    \oracle\product\10.2.0\bip\j2ee\home\application-deplo
    yments\xmlpserver\application.log
    With that said though, I don't expect you'll find
    much in there that would help with your particular
    problem. I suspect you either get no rows in your XML
    at runtime, due to some session state issues, or your
    XML structure does in fact not match your RTF
    template.
    I'm not quite following your problem description,
    i.e. when did you do what and are you associating
    your report layout with a report query or report
    region. So just some general notes, your query needs
    to be parseable at design-time, when exporting the
    XML, so that you get the XML file with the proper
    column names derived from your query. If you want to
    use your RTF template with a standard report region,
    you must export the XML file first using the advanced
    XML structure option. And of course the column names
    in your report query need to match the column names
    in your report region.
    Perhaps this helps you further diagnose what's going
    on, if you have additional information that could
    help, let me know. And if you could stage this on
    apex.oracle.com, I'd be happy to take a look.
    Regards,
    MarcMarc,
    Thanks for looking at this issue. Below find my remarks to your questions..
    Re: your query needs
    to be parseable at design-time, when exporting the
    XML, so that you get the XML file with the proper
    column names derived from your query.At the start of this process, the query code was a function in a package. The function was returning an SQL select statement, for a report region on a page. I took the select statement, built an application query to build a sample of the xml for BI Publisher desktop (Add-on for Word). The code was producing the usual Col01, Col02.. since at design time that is were the column names.
    When I then took the xml from this and built the rtf for loading into my APEX application.
    When testing the Application Query with this RTF report layout, I am getting PDF's. When using it with the report region sending an xml feed to BI Publisher I am getting nothing back.
    I have since taken the sql code and moved it back into the report region, and set the region to have a type of straight SQL Query. I have even tried to hard-code the parameters I was getting from the page to limit data returned.
    Is it possible to see the xml being produced by the APEX page?
    Re: Stage this on apex.oracle.com.. I would love to, but we would have HIPPA issues if I posted the data on a public website.
    Can I send you the RTF file and the xml file that the application query is creating to see if there something weird about them?
    Thank you,
    Tony Miller
    UTMB/EHN

  • How to get thr number of rows of an SQL query in JSTL

    hi guys,
    can anyone please tell me how do i perform a function which finds out the particular rownumber of an sql query in JSTL.....
    the same code in jsp is:
    <% plateRSet.getRowNum() %>
    how do i do this given plateRset is the var for a given iteration
    thanks
    rahul

    make your result set scrollable...Not such a good idea. With Oracle, the JDBC driver will read and cache all the ResultSet in memory (with other DBMSs/drivers the behavior will probably be different, but you will still have some unnecessary overhead).
    You can do the caching yourself if you think it's worth it. If the piece of code you posted is why you need this for, then use a List or Vector and you won't need to know the size upfront.
    Alin,
    The jTDS Project.

  • SQL query log File..

    Hi All,
    I am using a standalone BIP environment... Is there way we can see the actual query log the BIP generates? which location on the server..or how to get it activated.
    I want to see what is the actual sql query that is generated along with variables in it.
    Fyi : I want to have the query log n not the server error log..
    -dev

    Hi Eric,
    I would like you to re-check on the content level settings here as they are the primary causes of this kind of behavior. You could notice that the same information might have written down in the logical plan of the query too.
    Also, as per your description
    "In the SOURCES for this logical table, I've set the logical level of the content for E2 appropriately (detail level, same as E1)"
    I would like to check on this point again, as if you had mapped E2 to E1 in the same logical source with an inner join, you would get to set the content level at E1 levels themselves but not E2 (Now, that E2 would become a part of the E1 hierarchy too). This might be the reason, the BI Server is choosing to elimiate(null) the values from E2 too (even you could see them in the sql client)
    Hope this helps.
    Thank you,
    Dhar

  • URGENT Please help with weird behavior of test suite

    Hi All,
    I have a composite involving three operations of two different services. The weird behavior comes by the time on which I run the test suite on the EM, if I try to emulate two different operation response from one service, by the time that the flow, tries to emulate the second one, I always receive this error:
    part name="summary">
    <summary>oracle.fabric.common.FabricException: javax.wsdl.WSDLException: WSDLException: faultCode=OTHER_ERROR: Error writing stream: java.io.IOException: Can only write attribute within a tag.: WSDLException: faultCode=OTHER_ERROR: Error writing stream: java.io.IOException: Can only write attribute within a tag.</summary>
    </part>
    On the other hand if I emulate two responses of the same operation it works.
    Does any one have any idea of how to deal with this kind of test? Which seems a very simple test.
    Best regards,

    Hi thanks for your response, in detail my problem is as follows:
    1- I have a simple composite with two services and three invokes, all of the operations are two ways operations. Here´s the BPEL (Service1 Demandas, operation Actualizar; Service 2 Aviso, operations buscar, actualizar):
    <scope name="SINAUT_Aviso_SRV_Demandas_Actualizar">
    <bpelx:annotation xmlns:bpelx="http://schemas.oracle.com/bpel/extension">
    <bpelx:pattern patternName="bpelx:automated"/>
    <bpelx:analysis>
    <bpelx:property name="LastUpdateDate">9/10/10 9:35:50 AM</bpelx:property>
    <bpelx:property name="BusinessId">Scope_151babe7-bc1e-11df-3ca0-0015c5fce8ce</bpelx:property>
    </bpelx:analysis>
    </bpelx:annotation>
    <sequence>
    <bpelx:annotation xmlns:bpelx="http://schemas.oracle.com/bpel/extension">
    <bpelx:analysis>
    <bpelx:property name="BusinessId">Sequence_151babe7-bc1e-11df-3ca0-0015c5fce8ce</bpelx:property>
    <bpelx:property name="LastUpdateDate">9/10/10 9:35:50 AM</bpelx:property>
    </bpelx:analysis>
    </bpelx:annotation>
    <assign name="Assign_1">
    <copy>
    <from variable="inputVariable"
    query="/client:process/client:input/idDemada"
    part="payload"/>
    <to variable="Invoke_2_actualizar_InputVariable"
    part="payload" query="/payload/demanda/idDemanda"/>
    </copy>
    <copy>
    <from variable="inputVariable"
    query="/client:process/client:input/estadoDemanda/codigo"
    part="payload"/>
    <to variable="Invoke_2_actualizar_InputVariable"
    part="payload"
    query="/payload/demanda/estadoDemanda/codigo"/>
    </copy>
    </assign>
    <invoke name="Invoke_2"
    inputVariable="Invoke_2_actualizar_InputVariable"
    outputVariable="Invoke_2_actualizar_OutputVariable"
    partnerLink="SRV_Demandas"
    portType="ns2:SINAUT_Aviso_SRV_Demandas"
    operation="actualizar"/>
    </sequence>
    </scope>
    <scope name="SINAUT_Aviso_SRV_Avisos_Actualizar">
    <bpelx:annotation xmlns:bpelx="http://schemas.oracle.com/bpel/extension">
    <bpelx:pattern patternName="bpelx:automated"/>
    <bpelx:analysis>
    <bpelx:property name="LastUpdateDate">9/10/10 9:35:57 AM</bpelx:property>
    <bpelx:property name="BusinessId">Scope_c235386b-bc1f-11df-3ca0-0015c5fce8ce</bpelx:property>
    </bpelx:analysis>
    </bpelx:annotation>
    <sequence>
    <bpelx:annotation xmlns:bpelx="http://schemas.oracle.com/bpel/extension">
    <bpelx:analysis>
    <bpelx:property name="BusinessId">Sequence_c235386b-bc1f-11df-3ca0-0015c5fce8ce</bpelx:property>
    <bpelx:property name="LastUpdateDate">9/10/10 9:35:57 AM</bpelx:property>
    </bpelx:analysis>
    </bpelx:annotation>
    <assign name="Assign_2">
    <copy>
    <from variable="inputVariable"
    query="/client:process/client:input/ReferenciaPly"
    part="payload"/>
    <to variable="Invoke_1_actualizar_InputVariable"
    part="payload" query="/payload/aviso/referenciaPlyAviso"/>
    </copy>
    <copy>
    <from variable="inputVariable"
    query="/client:process/client:input/estadoAviso/codigo"
    part="payload"/>
    <to variable="Invoke_1_actualizar_InputVariable"
    part="payload" query="/payload/aviso/estadoAviso/codigo"/>
    </copy>
    </assign>
    <invoke name="Invoke_1"
    inputVariable="Invoke_1_buscar_InputVariable_1"
    outputVariable="Invoke_1_buscar_OutputVariable_1"
    partnerLink="SRV_Aviso"
    portType="ns1:SINAUT_Aviso_SRV_Avisos"
    operation="buscar"/>
    <assign name="Assign_4">
    <copy>
    <from expression="'12345'"/>
    <to variable="Invoke_3_actualizar_InputVariable"
    part="payload" query="/payload/aviso/referenciaPlyAviso"/>
    </copy>
    </assign>
    <invoke name="Invoke_3"
    inputVariable="Invoke_3_actualizar_InputVariable"
    outputVariable="Invoke_3_actualizar_OutputVariable_1"
    partnerLink="SRV_Aviso"
    portType="ns1:SINAUT_Aviso_SRV_Avisos"
    operation="actualizar"/>
    </sequence>
    </scope>
    2- My test suite is as follows:
    <wireActions wireSource="SINAUT_Aviso_PR_DemandasActualizar_TO_BE_/SRV_Demandas" operation="actualizar">
    <emulate duration="PT0S">
    <message>
    <part partName="payload">
    <content>
    <payload xmlns=""/>
    </content>
    </part>
    </message>
    </emulate>
    </wireActions>
    <wireActions wireSource="SINAUT_Aviso_PR_DemandasActualizar_TO_BE_/SRV_Aviso" operation="buscar">
    <emulate duration="PT0S">
    <message>
    <part partName="payload">
    <filePath>prueba_busqueda.xml</filePath>
    </part>
    </message>
    </emulate>
    </wireActions>
    <wireActions wireSource="SINAUT_Aviso_PR_DemandasActualizar_TO_BE_/SRV_Aviso" operation="actualizar">
    <emulate duration="PT0S">
    <message>
    <part partName="payload">
    <filePath>prueba_actualizar.xml</filePath>
    </part>
    </message>
    </emulate>
    </wireActions>
    3- When the test suite executes the second operation of the second service it throws this exception:
    <bpelFault><faultType>0</faultType><remoteFault xmlns="http://schemas.oracle.com/bpel/extension"><part name="summary"><summary>oracle.fabric.common.FabricException: javax.wsdl.WSDLException: WSDLException: faultCode=OTHER_ERROR: Error writing stream: java.io.IOException: Can only write attribute within a tag.: WSDLException: faultCode=OTHER_ERROR: Error writing stream: java.io.IOException: Can only write attribute within a tag.</summary></part><part name="detail"><detail>Can only write attribute within a tag.</detail></part></remoteFault></bpelFault>
    4- if I change the second operation with the first one(buscar), it doesn't throws any exception.
    5- If this is a limitation , how can I test a composite that involves n operations of the same service?
    Kind regards and thanks for all of your support

  • How to create this CSV in Sql query?

    I have a order_detail table with the primary key order_detail_id and the foregin keys order_id and product_id. Also I have three other fields, A, B and C, to describe the nature of this order detail. A product_id can be existed on different order_id
    but not in a single order_id (ie no duplicate product_id on a order). What I want the dataset to return is when passing the order_id, it could be single or multiple order_id, the query will give me the order_detail_id in comma seperate string if two or more
    of the same product_id found on the multiple order_ids and the same value on the other three fields, A, B and C, ie I would like to group by all the order_detail_id in a single row if those conditions are met.  Thanks a million. 
    Kahlua

    Please post DDL, so that people do not have to guess what the keys, constraints, Declarative Referential Integrity, data types, etc. in your schema are. Learn how to follow ISO-11179 data element naming conventions and formatting rules. Temporal data should
    use ISO-8601 formats. Code should be in Standard SQL as much as possible and not local dialect. 
    This is minimal polite behavior on SQL forums. 
    >> I have a order_detail table with the PRIMARY KEY order_detail_id and the foreign keys order_id and product_id. <<
    WRONG. Order details are called weak entities in data modeling. They need a strong entity (the order) to exist. Therefore, the key has to include the order id as part of the PRIMARY KEY. There is no separate  “order_detail_id” in a correct model. 
    >> Also I have three other fields [sic], A, B and C, to describe the nature of this order detail. A product_id can existed on different order_id but not in a single order_id (i.e. no duplicate product_id on a order). <<
    Columns are not anything like fields. You need to learn basic terms. Here is what a polite person might have posted:
    CREATE TABLE Orders
    (order_nbr CHAR(15) NOT NULL PRIMARY KEY, 
    CREATE TABLE Order_Details
    (order_nbr CHAR(15) NOT NULL 
       REFERENCES Orders(order_nbr)
       ON DELETE CASCADE, 
     product_id CHAR(15) NOT NULL,
     PRIMARY KEY (order_nbr, product_id),
     order_qty INTEGER DEFAULT 1 NOT NULL
       CHECK (order_qty > 0), 
     -- special attributes
      alpha CHAR(5) NOT NULL,
      beta CHAR(5) NOT NULL,
      gamma CHAR(5) NOT NULL,
    >> What I want the data set to return is when passing the order_id, it could be single or multiple order_id, the query will give me the order_detail_id in comma separate string if two or more of the same product_id found on the multiple order_ids and
    the same value on the other three fields [sic], A, B and C, i.e. I would like to group by all the order_detail_id in a single row if those conditions are met. <<
    WRONG! You want to violate First Normal Form (1NF) and do display formatting in the database! You have not ever read a book or had a class on RDBMS. CSV? No! 
    Now, where is the sample data? More bad Netiquette! I have done this before; you can read the details at: 
    http://www.tdan.com/view-perspectives/5343
    It is a special case of a relational division. Since you did not post DDL, I will not post DML. 
    --CELKO-- Books in Celko Series for Morgan-Kaufmann Publishing: Analytics and OLAP in SQL / Data and Databases: Concepts in Practice Data / Measurements and Standards in SQL SQL for Smarties / SQL Programming Style / SQL Puzzles and Answers / Thinking
    in Sets / Trees and Hierarchies in SQL

  • The SQL query is not executing

    Hi
    I have the following situation: In a project we designed our reports calling a stored procedure the exits in a MS SQL Server 200 database. The Stored Procedures works fine and when they are used in the report everything works perfectly.
    The reports are being made with CR DEsigner 11, when the designer ends them, ha pass them to me and we put them in our java web application. I open them and even preview them since the Crystal Reprots Perspective of Eclipse and I can see the data, so everything to this point is OK.
    The problem comes when I change of connection, I'm trying to connect every report to the same host and database, and when the reprot is displayed in the browser there is no data. I profile the SQL commands that are executed when the report is requested and I found that the reprot is not executing the stored procedure.
    I guess because i'm connectring the report to the same database and host that was used when the report is created and i'm also passing exactly the same parameters of the stored procedure, then report thinks that it doesn't have executing again becuase it will be the same information.
    SO, i wonder if there is a way to request to the report to execute the sql query every time i have to display it.
    thanks for any help.

    What happens when you try to view the report using a simple viewer.jsp?without changing the connection?
    2009-05-25 14:06:09,250 ERROR com.businessobjects.reports.sdk.JRCCommunicationAdapter -  detected an exception: Error de conexión: [SQLServer 2000 Driver for JDBC]Error establishing socket.
    But the database server is ok, so i think the rpt needs more information to be connect to the database.
    Also what happens if you dont use the data bean and give everything there only?
    The same, the rpt is not executing the stored procedure.
    Did anything change on the RDBMS side? Additional packages, changes to the schema, ownership, etc?
    No, the server is ok and the database is ok.
    If you configure Log4J logging to DEBUG, you should see the database invokes from the Crystal Java engine, specifically the queries sent and the number of rowsets returned. Do you notice any errors?
    I have a problem here with log4j. In my project i'm using spring and with the help of spring i configure log4j, basically with spring is easier to configure log4j.
    I'm telling you this because i have log4j working but when my application reaches the code to change the connection to the rerport, log4j dies and stop sending any message to the stdout or to a log file. I haven't since this behavior in any other app o library. So i want to guess i have something wrong with my log4j or maybe with log4j+spring.
    So, i remove all the code of spring referring to log4j, but the problem with log4j wasn't solved.
    What i will try now is to remove spring from the project.
    This is my log4j.properties:
    log4j.rootLogger=DEBUG, stdout
    log4j.appender.stdout=org.apache.log4j.ConsoleAppender
    log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
    log4j.appender.stdout.layout.ConversionPattern=%d %p [%c] - %m%n

  • SQL query runs too many times in SQL server Profiler

    Hi Experts
    I have designed a report using SQL database.Report is based on Add Command Object, View and Table.Which are link and gives desired output.
    However it takes long time. In the SQL Sever profiler it shows that query is executing too many times.
    When in the Add Command object I edit the query Say I write TOP 5000 then it executes once however if I write Add 5001 then I face the same behavior.
    I have checked "Grouping on server" option in options.
    Please Advice.
    Regards
    Asha.

    Thanks Raghavendra for reply
    How adding group will help? I have to link this command objects with view and table.Also  When I add "TOP 5000" in add command query it executes only 1 time in SQL query Profiler hower if edit that query to "TOP 5001" then it again it executes several time which is impacting the performance.
    Please advice?
    Regards
    Asha.

  • Using prompts with SQL query

    Post Author: wleonetti
    CA Forum: Crystal Reports
    Hello!
    I have acquired a report from our regional headquarters, and have been asked locally to add a prompt to one that already exists in the report.
    The report currently uses an SQL query, which in turn uses a single prompt to limit the data reported. However, the name of the parameter in the Field Explorer in Parameter Fields is "Facility", but, when I use the Database Expert and select edit for the query (under Selected Tables, right-click on "Command" under the database and click on "Edit Command"--is Command a default name?), under the Parameter List, the name of the parameter there is "Facility1" (?). The SQL references the parameter "Facility1" (...like '{?Facility1}'), but I cannot find any link/interface between the Parameter List "Facility1" to the Parameter Field "Facility", and I cannot find any other references to "Facility1" anywhere else in the report (sorry, I'm very new at CR, and am not sure how to do a global search of a desired text string in the reports).
    I have asked the author for an explanation, but he would only offer, after indicating that he ... was not obligated to help me in any way .., the following bone: "I just simply rename the parameter in Command from Facility1 to Facility which bears the same name as the parameter interface and it just works fine." This only served to confuse me more, since the parameter name currently in Command is  "Facility1" (and the report works the way it is)--when I change the name of the parameter in Parameter List (and the parameter name in the SQL query) to "Facility" (to match the Parameter Field's "Facility"?) ... the parameter in the Parameter Fields ... disappears?
    Can someone please instruct me how to, in whatever steps are necessary, add a parameter to the Parameter Fields and edit the SQL code to use that parameter? or point me to some documentation that will help me with this?
    Thanks in advance for any help offered.
    wleonetti

    Hi Eric,
    Try expressing the source as this:
    begin
       return functionname(to_date('30-sep-2010', 'dd-mon-yyyy'));
    end;That works fine for me, and if I take out the begin-end and the trailing semicolon from the return statement I get the same behavior as you.
    It does mention in the help for the source (only during the wizard though) that this source type has to be expressed that way, but I agree it would be helpful if the tool would validate for this format when 'Function Returning SQL Query' is used or give some sort of indication of the trouble. Anyway, this should get you going again.
    Hope this helps,
    John
    If you find this information useful, please remember to mark the post "helpful" or "correct" so that others may benefit as well.

  • Using 'Function Returning SQL Query' with Flash charts

    I have created a pl/sql function that returns a SQL query as a varchar2 of this form:
    select null link
    <x value> value
    <Series1 y value> Series 1 Label
    <Series2 y value> Series 2 Label
    <Series3 y value> Series 3 Label
    from tablea a
    join tableb b
    on a.col = b.col
    order by <x value>
    If I now call the function from a Flash Chart Series SQL box with the Query Source Type set to 'Function Returning SQL Query' like this:
    return functionname(to_date('30-sep-2010', 'dd-mon-yyyy'))
    it parses correctly and the page is saved; however, when I run the page I don't get any output - nor any error messages or other indication of a problem.
    Now, if I call the function in a SQL client, capture the SQL query output using dbms_output and paste that into the Flash Chart Series SQL box - changing the Query Source Type to SQL Query - and save the page it works fine when I run it and returns a multi-series flash chart.
    Can anyone suggest either;
    1. What have I might have missed or done wrong?
    2. Any way to usefully diagnose the problem...
    I have tried using the Apex debugger - which is very nice, by the way - but it doesn't provide any info on what my problem might be. I even tried writing my own debug messages from my function using the apex_debug_message package - got nothing...
    Thanks,
    Eric

    Hi Eric,
    Try expressing the source as this:
    begin
       return functionname(to_date('30-sep-2010', 'dd-mon-yyyy'));
    end;That works fine for me, and if I take out the begin-end and the trailing semicolon from the return statement I get the same behavior as you.
    It does mention in the help for the source (only during the wizard though) that this source type has to be expressed that way, but I agree it would be helpful if the tool would validate for this format when 'Function Returning SQL Query' is used or give some sort of indication of the trouble. Anyway, this should get you going again.
    Hope this helps,
    John
    If you find this information useful, please remember to mark the post "helpful" or "correct" so that others may benefit as well.

  • Exists (SQL query returns at least one row) condition with MAX on 10.2.0.4

    I just wanted to note this on the forum..
    I'm using Apex 3.0.1.00.08
    My DEV environment has just been upgraded from 10g version 10.2.0.2.0 to 10.2.0.4.0.
    I created the following process to select some values into some items on my Form page.
    select  MAX(STAT_YEAR+1)
          , pcd.pct_id
          , pcd.stat_type_id
          , pcd.stat_period_type_id
          , pcd.measurement_id
    into    :P11_STAT_YEAR
          , :P11_PCT_ID
          , :P11_STAT_TYPE_ID
          , :P11_STAT_PERIOD_TYPE_ID
          , :P11_MEASUREMENT_ID
    from  plant_commodity_data pcd
        , stat_type stt
    where pcd.STAT_TYPE_ID = stt.STAT_TYPE_ID
      and pcd.pct_id = :P0_PCT_ID
      and stt.stat_type = 'PRD'
    group by pcd.pct_id
          , pcd.stat_type_id
          , pcd.stat_period_type_id
          , pcd.measurement_id;The process should run conditionally if there was at least one row to select...
    So I copied the SQL into the Process condition, removed the "into" section and set the condition type to be "Exists (SQL query retruns at least one row) ...
    select  MAX(STAT_YEAR+1)
          , pcd.pct_id
          , pcd.stat_type_id
          , pcd.stat_period_type_id
          , pcd.measurement_id
    from  plant_commodity_data pcd
        , stat_type stt
    where pcd.STAT_TYPE_ID = stt.STAT_TYPE_ID
      and pcd.pct_id = :P0_PCT_ID
      and stt.stat_type = 'PRD'
    group by pcd.pct_id
          , pcd.stat_type_id
          , pcd.stat_period_type_id
          , pcd.measurement_id;This worked perfectly until the DEV environment was upgraded from 10g version 10.2.0.2.0 to 10.2.0.4.0.
    The condition would fire even if there were no rows returning.
    I pasted the condition code into SQL Developer connected to the DEV (10.2.0.4.0) environment and it returned no rows.
    To solve the problem, I removed the MAX.
    You can test this using this code if you have access to the two versions... select  MAX(1)
          , sysdate
          , 'Gus'
    from  dual
    where 1 = 2
    group by sysdate, 2Now I know the MAX isn't required in the condition as I'm just trying to find out if any rows exist, but it was there as I copied the code in... I was just wondering why this happened between 10.2.0.2.0 and 10.2.0.4.0?
    Gus..

    Hi Gus,
    try to execute
    select count(*) from dual where exists (select  MAX(1)
          , sysdate
          , 'Gus'
    from  dual
    where 1 = 2
    group by sysdate, 2)in SQL Developer. The above statement is generated by APEX for an "Exists (SQL query retruns at least one row)". Can't test it, because I don't have a 10.2.0.4.0 at hand.
    Does SQL Developer now show the same behavior?
    Patrick
    My APEX Blog: http://www.inside-oracle-apex.com
    The APEX Builder Plugin: http://builderplugin.oracleapex.info/
    The ApexLib Framework: http://apexlib.sourceforge.net/

  • Sql query to fetch data based on date conditons

    Hi All,
    We have to schedule a script that runs at 1:00 AM from Monday to Friday.
    The script will run a  sql query  ,that will fetch the data from sql database 2008 based on the below conditions.
    Case 1: If date = current Date then retrieve the data of the previous Date.
    Case 2: If date = Monday then retrieve the entries of Friday ,Saturday and Sunday.
    Please help us on how we can achieve this.
    Thanks

    Hi,
    Are you asking about Patrick's
    solution?
    If so I highly recommend NOT to use this solution. PLease read LMU92's
    and
    Visakh16's responses.
    Why not to use it?
    1. This solution is not deterministic!
    A deterministic algorithm is an algorithm which, given a particular input, will always produce the same output. This solution give different values for different setting! It is depending for example on "SET LANGUAGE" value
    As mentioned above if you try to use any other languge then English then this query will not work since you will never get the value "Sunday"
    2. Moreover! Even if you are using "SET LANGUAGE 'English'" then this
    solution depend on "SET DATEFIRST" and only take into consideration that the value can be 1 or 7, using any other value you will get that @weekendDateMod is null!
    What can you use?
    let's test some value first to get the solution yourself. We know that we don't care about "SET LANGUAGE" since I will not use any language dependency but we need to examine "SET DATEFIRST". Try to change the value from 1 to 7 and check
    the value of this query
    SET DATEFIRST 1 -- Change this value from 1 to 7!
    DECLARE @Sunday DATE = '2014-08-03' -- This is Sunday
    DECLARE @Munday DATE = '2014-08-04' -- This is Munday
    SELECT DATEPART(DW,@Sunday),DATEPART(DW,@Munday), @@DATEFIRST
    Can you see the behavior ?
    The results are hidden here (select the text and you will see them)
    DATEFIRST___Sunday_______Monday
    1___________7___________1
    2___________6___________7
    3___________5___________6
    4___________4___________5
    5___________3___________4
    6___________2___________3
    7___________1___________2
    assuming you did the exercise above yourself, then  you can now think now what is the filter that you need...
    You can use a filter on those two parameters together using "where DATEPART... and @@DATEFIRST...) or using one combine check. Can you think how?
    Notice that this value is always 2 on Monday! Regarding our setting
    (DATEPART(DW,@CurrentDate) + @@DATEFIRST) % 7
    Please Don't Go Down Before YOu Understand!
    Now we can go to the solution
    * I really hope that you read all and did the small exercise yourself! You can not become a developer by copy answers, and this is the reason that from the start I only gave you tha way and not the final query!
    DECLARE @CurrentDate DATE = '2007-08-20' -- This is only for testing since you should use the function GETDATE() instead
    DECLARE @MinDateToFilter DATE
    SET @MinDateToFilter = CASE
    WHEN ((DATEPART(DW,@CurrentDate) + @@DATEFIRST) % 7) = 2 THEN DATEADD(DAY,-4,@CurrentDate)
    ELSE DATEADD(DAY,-1,@CurrentDate)
    END
    SELECT *
    FROM sales.salesOrderHeader
    WHERE orderDate > @MinDateToFilter
    I hope this was useful :-)
    [Personal Site] [Blog] [Facebook]

Maybe you are looking for

  • "media offline" at every project start

    Hello, I have a problem with the "media offline" note. At every start of a project in adobe premiere elements, a number of media files were not loaded correctly ("media offline"). Most of the media files (video clips) are succesfully connected by pre

  • Adding Visual custom component in spark DataGrid

    I am working with flex 4.5. I want to create Gauge component Datagrid. I am using open source com.betterthantomorrow.components. I have created custom components like this     <?xml version="1.0" encoding="utf-8"?>     <s:BorderContainer xmlns:fx="ht

  • Flar Image

    Our IT/CIS section made a .Flar backup (Image) of a SunFire V440 with OS 'Solaris 10 11/06 s10s_u3wos_10 SPARC' and want to port this image to a new M3000 server, but after the installation/setup and a final reboot it gives the next error: Rebooting

  • Changing init-param value for servlet filter after deployment

    Is it possible to change the <param-value> of a servlet filter's <init-param> for a deployed app through Weblogic Console? Can't seem to find a place in the console where this is exposed. The <init-param> of course is specified in web.xml as: <filter

  • Get album art is incorrect... how do I get the correct one?

    I have Queen's Greatest Hits 1 and 2 in iTunes, but when I "Get album artwork", it downloads "Queen Ekanem's Greatest Hits". However, Queen's Greatest Hits album is on iTunes, how do I tell iTunes to download that album art? I have a similar problem