Limiting query on nested object columns
Hello
Here's my setup:
type: STATUS_T (
status_id number
status_desc varchar2(30)
type: CASE_T (
case_id number
status_id number
these are joined for convenience in a view:
CASE_VIEW (
case_id number
status STATUS_T
I find I can easily select from CASE_VIEW using a case_id like this:
SELECT ... WHERE CASE_ID = 324234;
What I'd like to do is limit on a column in the STATUS_T type - for example find all
rows in CASE_VIEW which have status description of "OPEN"
How do I do a where clause that can access
the columns of the STATUS_T type?
I tried WHERE STATUS.STATUS_DESC = 'OPEN'
but that didn't work.
Thanks,
Steve Turner
select
Stephen,
Which release are you using? You need to use table alias along with the VALUE function. For example,
select value(t) from case_view t where t.status.status_desc='OPEN';
Regards,
Geoff
Similar Messages
-
Drill function implemented on Measure object column in the webi report
Post Author: madan kumar
CA Forum: WebIntelligence Reporting
Hi,
I have a small issue in my project.(Maintenance Project)I created a measure object in the fact table of the existing universe and saved and exported to the repository. (Say Measure object is D where D = A-(B+C))I inserted the same object as a column between two measure objects columns of a existing WebI report.
The report has two hierarchies involved - each hierarchy has dimension objects involved.I have checked with the hierarchies to make sure that measure object is not involved.The scope of analysis is None for the query.Version is BO XI R2.
The issue is the Drill function is implemented on that particular new column.The drill function should be applicable only to the two dimension objects involved in the report.But this measure object column is also getting drilled once the Drill option is selected.I had to remove the drill optiion from the Measure object column.
Can anyone help me on this issue...
Thanks in advance...
Madan KumarSushil
Thanks for your reply. I did the date diff on the columns. It does not break into 3 different groups. I am using a function called previous on the date column. So the report is like this
DATE Pervious (DATE) Date - Pervious(DATE)
01-01-2008 01:06 Null
01-01-2008 01:12 01-01-2008 01:06 :06
01-01-2008 01:18 01-01-2008 01:12 :06
01-01-2008 01:24 01-01-2008 01:18 :06
01-01-2008 01:30 01-01-2008 01:24 :06
01-01-2008 01:36 01-01-2008 01:30 :06
Basically we are breaking on the Date - Previous ( Date) column which does not work. I am not sure if there is a way to break this. I even tried it in Crystal REports XI and it does not work their either. Any help with this issue with be greatly appriciated.
Edited by: Srinivasa Prabu on Aug 4, 2008 2:55 PM
Edited by: Srinivasa Prabu on Aug 4, 2008 2:56 PM -
Is it possible the query in view object is dynamic?
Is it possible the query in view object is dynamic?
Generally, make the column list dynamic.
I think this is related to whether view object can be assembled at runtime based on a dynamic cursor in a procedure?
I ask this because I would like to know how we can use OA framework to simulate crosstab workbook in Discoverer?
Anybody has some clues, please advise.
Thanks.Hi Shay,
Let me tell you briefly... I am sending input as customerId,customerNumber,CustomerName to the web service, if the record is available i am getting the response and i am displaying those records on page as a table. Now when i click a row i need to populate another table with all sale orders of that customer. From webservice datacontrol i have only customer object, I dont have Sales Order Object. For this i need master detail relation. In this case how to proceed. Thats why i am thinking to create a vO and EO object for sales orders table and i want to create view link for this sales order and customers. As i don't have customer VO and EO object to create view link. -
Trigger how to get new and old value for nested table column?
Hi,
I have created a nested table based on the following details:
CREATE TYPE typ_item AS OBJECT --create object
(prodid NUMBER(5),
price NUMBER(7,2) )
CREATE TYPE typ_item_nst -- define nested table type
AS TABLE OF typ_item
CREATE TABLE pOrder ( -- create database table
ordid NUMBER(5),
supplier NUMBER(5),
requester NUMBER(4),
ordered DATE,
items typ_item_nst)
NESTED TABLE items STORE AS item_stor_tab
INSERT INTO pOrder
VALUES (800, 80, 8000, sysdate,
typ_item_nst (typ_item (88, 888)));
Now I would like to create a trigger on table pOrder for after insert or update or delete
and I would like to track the new and old value for the columns inside nested table.
Can anybody direct me how to do it?
I would like to know the sytax for it like:
declare
x number;
begin
x := :new.nestedtablecolumn;--how to get the new and old value from nested table columns
end;
Hope my question is clear.
Thanks,
LavanHi,
Try like this:
CREATE OR REPLACE TRIGGER PORDER_I
BEFORE INSERT
ON PORDER
REFERENCING OLD AS old NEW AS new
FOR EACH ROW
DECLARE
items_new typ_item_nst;
ordid_NEW NUMBER;
BEGIN
FOR i IN :new.items.FIRST .. :new.items.LAST LOOP -- For first to last element
DBMS_OUTPUT.PUT_LINE(':new.items(' || I || ').prodid: ' || :new.items(I).prodid );
DBMS_OUTPUT.PUT_LINE(':new.items(' || I || ').price: ' || :new.items(I).price );
END LOOP;
END;Regards,
Peter -
Problem in truncate/drop partitions in a table having nested table columns.
Hi,
I have a table that has 2 columns of type nested table. Now in the purge process, when I try to truncate or drop a partition from this table, I get error that I can't do this (because table has nested tables). Can anybody help me telling how I will be able to truncate/drop partition from this table? IF I change column types from nested table to varray type, will it help?
Also, is there any short method of moving existing data from a nested table column to a varray column (having same fields as nested table)?
Thanks in advance.>
I have a table that has 2 columns of type nested table. Now in the purge process, when I try to truncate or drop a partition from this table, I get error that I can't do this (because table has nested tables). Can anybody help me telling how I will be able to truncate/drop partition from this table?
>
Unfortunately you can't do those operations when a table has a nested table column. No truncate, no drop, no exchange partition at the partition level.
A nested table column is stored as a separate table and acts like a 'child' table with foreign keys to the 'parent' table. It is these 'foreign keys' that prevent the truncation (just like normal foreign keys prevent truncating partions and must be disabled first) but there is no mechanism to 'disable' them.
Just one excellent example (there are many others) of why you should NOT use object columns at all.
>
IF I change column types from nested table to varray type, will it help?
>
Yes but I STRONGLY suggest you take this opportunity to change your data model to a standard relational one and put the 'child' (nested table) data into its own table with a foreign key to the parent. You can create a view on the two tables that can make data appear as if you have a nested table type if you want.
Assuming that you are going to ignore the above advice just create a new VARRAY type and a table with that type as a column. Remember VARRAYs are defined with a maximum size. So the number of nested table records needs to be within the capacity of the VARRAY type for the data to fit.
>
Also, is there any short method of moving existing data from a nested table column to a varray column (having same fields as nested table)?
>
Sure - just CAST the nested table to the VARRAY type. Here is code for a VARRAY type and a new table that shows how to do it.
-- new array type
CREATE OR REPLACE TYPE ARRAY_T AS VARRAY(10) OF VARCHAR2(64)
-- new table using new array type - NOTE there is no nested table storage clause - arrays stored inline
CREATE TABLE partitioned_table_array
( ID_ INT,
arra_col ARRAY_T )
PARTITION BY RANGE (ID_)
( PARTITION p1 VALUES LESS THAN (40)
, PARTITION p2 VALUES LESS THAN(80)
, PARTITION p3 VALUES LESS THAN(100)
-- insert the data from the original table converting the nested table data to the varray type
INSERT INTO PARTITIONED_TABLE_ARRAY
SELECT ID_, CAST(NESTED_COL AS ARRAY_T) FROM PARTITIONED_TABLENaturally since there is no more nested table storage you can truncate or drop partitions in the above table
alter table partitioned_table_array truncate partition p1
alter table partitioned_table_array drop partition p1 -
Nested Table columns and ADF BC 11.1.2
I'm thinking ahead to a new application design, including a new database design. In this application, there are users who may not change the production tables directly, but their changes must be approved (and possibly modified) before they are applied to the production tables. The production tables are part of an existing system, and are fairly well normalized, with a master table and several detail tables.
So for the new design, I want to have a staging table, mirroring the master table, where user changes are stored until they are approved and applied to the production tables. The staging table contains a few extra columns for "add, change or delete", user who submitted the change, date the change was requested. After applying the change, the staging record is to be copied to a change history table, and deleted from staging. That way, the staging table never has a lot of data in it.
Here's the question:
I need to deal with the detail tables. I could have staging versions of each detail table, but I was thinking that it might be easier to handle if the detail tables were included as nested table columns of the master staging table. Most of the detail tables only contain a few rows per master row. But can ADF BC 11.1.2 handle nested table columns? Is it easy to use in an application?Thanks for the quick response. I was thinking I might get a response from someone who had tried it, so I didn't waste time trying it myself. I consider your response is pretty authoritative, and I'll take that as a sign that I should forget the nested tables design.
No, polymorphic views probably won't do the job. I think I'll just go ahead and create staging versions of each detail table with foreign keys back to the master staging table. Then I'll let the wizard create the needed association objects and view links in ADF BC. It will complicate the procedure for applying changes, particularly adding a row to the change history table. But that's the price we'll need to pay.
OTOH - I just had a thought - since the change history table is mostly for auditing, it appears in some reports, but has no CRUD in the application, other than the insert when the changes are applied. If I did that insert with a trigger or some other PL/SQL, then the change history could still be a single table with nested table columns for the details. -
Problem when expanding Tree - Tree with nested table column
Hi, i have created the tree using the Tree with nested table column.
I have created a node called TREE_ROOT in the context.
This node has few attributes which includes children_loaded, is_leaf, is_expanded.
I have created the recursive node TREE_SUB for the above node TREE_ROOT.
In the view, i have created the table with the master column. The above attributes have been mapped accordingly. I have created the action handler for load_children.
In this action handler method, i receive the context_element correctly. In this method, i determine the children of the selected element and the resulting children are attached to this context_element.
But the problem is: when i add elements to context_elements in the method load_children, these
elements get added to the node TREE_ROOT as well.
Please help.
thanks and best regards,
PramodI just use some types defined in this user... Well, I hope you know what is the type definition of d_period_sec,
don't you ? I didn't ask to provide all types existed now, only types you are
using.
Anyhow you have been granted with execute privilege for types you are using:
SQL> conn tau_tll/tau_tll;
Connected.
SQL> create or replace type d_period_sec as object (date# date);
2 /
Type created.
SQL> grant execute on d_period_sec to public with grant option;
Grant succeeded.
SQL> conn scott/tiger
Connected.
SQL> CREATE OR REPLACE TYPE unit_function AS OBJECT (
2 xi NUMBER,
3 yi NUMBER,
4 xe NUMBER,
5 ye NUMBER,
6 xm NUMBER,
7 ym NUMBER,
8 v NUMBER,
9 a NUMBER,
10 f NUMBER,
11 descr VARCHAR2 (20)
12 );
13 /
Type created.
SQL> grant execute on unit_function to master;
Grant succeeded.
SQL> CREATE OR REPLACE TYPE unit_moving_point AS OBJECT
2 (
3 p tau_tll.d_period_sec, -- from user TAU_TLL
4
5 m unit_function
6 )
7 /
Type created.
SQL> grant execute on unit_moving_point to master;
Grant succeeded.
SQL> CREATE OR REPLACE TYPE moving_point_tab AS TABLE OF unit_moving_point;
2 /
Type created.
SQL> grant execute on moving_point_tab to master;
Grant succeeded.
SQL> CREATE OR REPLACE TYPE moving_point AS OBJECT (u_tab moving_point_tab);
2 /
Type created.
SQL> grant execute on moving_point to master;
Grant succeeded.
SQL> conn master/master
Connected.
SQL> CREATE TABLE MPOINTS (
2 id NUMBER,
3 mpoint scott.Moving_Point)
4 NESTED TABLE mpoint.u_tab store as moving_tab;
Table created.Rgds. -
Expert mode query in View objects and appended where clause
My company is Oracle Member Partner and we are developing enterprise web applications using Oracle database and BC4J.
I have the following problem...
When I enable EXPERT MODE option in View Object I have trouble appending to query statement in my client code.
I need expert mode because I must use "SELECT DISTINCT" insted of "SELECT" in my query.
It looks something like this:
viewObject.setWhereClause("CLA_ID = " + claId);
viewObject.executeQuery();
SQL query from View Object becomes sub-query and fails to execute:
select * from (original view object query) where (... appended where clause)
Order by part of the query causes sql errors because original query is now sub-query.
Is there any way around this?I tried creating an expert mode SQL query:
SELECT DISTINCT EMPNO, ENAME FROM EMP.
Then at runtime I do:
vo.setWhereClause("ENAME LIKE '%'||?||'%');
vo.setWhereClauseParam(0,'A');.
and this works fine. The trick is that since expert-mode view objects get wrapped as inline views (to allow runtime appending of WHERE clause, actually), you need to select any column in the select statement to which you want to later refer in a dynamically-appended where clause.
If you want to prevent the inline-view wrapping, you can write the following code in your view object's ViewObjectImpl subclass to force the VO to NOT be treated as an expert-mode SQL VO.
// Goes in your view object impl subclass
public void create() {
// Force this VO to NOT be treated as an expert-mode SQL, so that
// its query does not get wrapped as an inline view.
getViewDef().setFullSql(false);
}I used this trick above to create an expert mode query like:
SELECT DISTINCT deptno FROM empand then at runtime I add a dynamic where clause that refers to a column
in EMP that is not in the select list like this:
ViewObject vo = am.findViewObject("View1");
vo.setWhereClause("ename like '%A%'");
vo.executeQuery();
System.out.println(vo.first().getAttribute(0));and this causes the query to come out as:
SELECT DISTINCT deptno FROM emp WHERE ename like '%A%'.
instead of:
SELECT * FROM (SELECT DISTINCT deptno FROM emp) QRSLT WHERE ename like '%A%'which would cause an error due to the fact that ename is not in the select list of the original (wrapped, inline) query. -
Queue Table with Nested Objects
I need to create a queue table based on nested object
These are my declarations
TYPE TESTATATYPE AS OBJECT (
CODICE VARCHAR2(5),
DESCRIZIONE VARCHAR2(30)
TYPE DETTAGLIOTYPE AS OBJECT (
CODICE VARCHAR2(5),
DESCRIZIONE VARCHAR2(30),
VALORE NUMBER
TYPE DETTAGLITYPE IS TABLE OF DETTAGLIOTYPE
TYPE MESSAGGIOTYPE AS OBJECT (
TESTATA TESTATATYPE,
DETTAGLI DETTAGLITYPE
Now i'm trying to create queue table
DBMS_AQADM.CREATE_QUEUE_TABLE(queue_table => 'MsgQTab',
queue_payload_type => 'MessaggioType',
storage_clause => 'NESTED TABLE
dettagli STORE AS dettagli_tab_Q',
sort_list => 'priority,enq_time'
but I get
ORA-00904: invalid column name
ORA-06512: at "SYS.DBMS_AQADM_SYS", line 2012
ORA-06512: at "SYS.DBMS_AQADM", line 55
ORA-06512: at line 3
maybe the problem is storage clause, can you help me ?
nullAndrea,
You cannot currently use a nested table even as an embedded object within a message payload.
However, you can create an object type that contains one or more VARRAYs, and create a queue table that is founded on this object type. I guess this might be the problem you are facing. -
Nested Objects for a Data Provider in a Data Grid, not displaying data
Hi, I have a datagrid and the dataprovider for this grid is the result of a RPC call. The result set has the following structure:
Array
[0]->Object #1
[one] => 1
[two] => 1
[three] => Object #2
[apple1] = > Object #3
[color] => red
[rate] => 20
[apple2] => Object #4 ( the number of apples is dynamic, apple3,apple4 .. and so on)
[color] => blue
[rate] => 100
and so on ... so the number of apple objects will vary since its
dynamic. How do I display this data in a datagrid ??? Please help!! I
saw many articles on creating the "Nested DataGridColumn " classes...
like this :
http://active.tutsplus.com/tutorials/flex/working-with-the-flex-datagrid-and-nested-data-structures/
it helps, but the problem with my data is that some of the indexes (like apple1,apple2 etc) are dynamic.
Also, my flex application is a desktop application (in case that matters). Just to see whats going on, I
dropped all the nested arrays and used a plain simple one-dimensional array. Even in this case the data
isnt getting displayed.
I dont know what im doin wrong. the datafields, labels etc e'thing is correct. I even debugged and
im getting the result on the flex side. whats going on ?No luck ... i converted the result set to a List, and even tried with an iList. Same problem - nothing gets displayed...
I have no idea whats happening ....
This is my code :
[Bindable]private var privilegesArray:ArrayCollection = new ArrayCollection();
public function init():void{ // called on creation complete
RO.getPrivileges.addEventListener(ResultEvent.RESULT,handleGetPrivileges);
RO.getPrivileges();
protected function handleGetPrivileges(event:ResultEvent):void{
privilegesArray = event.result as ArrayCollection;
<mx:DataGrid id="privilegesDG" dataProvider="{privilegesArray}" width="100%">
<mx:columns>
<mx:DataGridColumn headerText="Name" dataField="name" />
<mx:DataGridColumn headerText="Alias" dataField="alias" />
</mx:columns>
</mx:DataGrid>
The data that gets returned is smthing like this : (for the moment I have removed all the nested objects and arrays and returning just a simple plain array)
Array => [0] => Object #1
[name] => some name
[alias] => alias -
Using Nested Object Properties as DataGrid dataField
I am populating a DataGrid with an ArrayCollection of
Objects. Each of those Objects has a property that is itself an
Object. I want to use a property of the second (or "nested") Object
as a dataField for one of my columns.
Any idea how to make this work? Would a custom item render be
the only way?Using the labelFunction property of the DataGridColumn would
be enough:
<mx:DataGrid width="100%" height="100%"
dataProvider="{myAC}">
<mx:columns>
<mx:DataGridColumn dataField="myProperty1" />
<mx:DataGridColumn dataField="myProperty2" />
<mx:DataGridColumn
labelFunction="myOwnLabel" />
</mx:columns>
</mx:DataGrid>
function myOwnLabel(item:Object,
column:DataGridColumn):String
return item.myProperty;
The function must have that signature in order to work, where
item is an instance of the objects in your dataProvider and column
is the DataGridColumn calling the function. -
Delay when querying from CUBE_TABLE object, what is it?
Hi Guys,
We are using Oracle OLAP 11.2.0.2.0 with an 11g Cube, 7 Dimensions, Compressed and partitioned by Month.
We have run into a performance issue when implementing OBIEE.
The main issue we have is a delay while drilling on a hierarchy. Users have been waiting 7-12 seconds per drill on a hierarchy, and the query is only returning a few cells of data. We have managed to isolate this to slow performing queries on CUBE_TABLE.
For example, the following query returns one cell of data:
SELECT FINSTMNT_VIEW.BASE, FINSTMNT_VIEW.REPORT_TYPE, FINSTMNT_VIEW.COMPANY, FINSTMNT_VIEW.SCENARIO, FINSTMNT_VIEW.PRODUCT, FINSTMNT_VIEW.ACCOUNT, FINSTMNT_VIEW.SITE, FINSTMNT_VIEW.TIME
FROM "SCHEMA1".FINSTMNT_VIEW FINSTMNT_VIEW
WHERE
FINSTMNT_VIEW.REPORT_TYPE IN ('MTD' )
AND FINSTMNT_VIEW.COMPANY IN ('E01' )
AND FINSTMNT_VIEW.SCENARIO IN ('ACTUAL' )
AND FINSTMNT_VIEW.PRODUCT IN ('PT' )
AND FINSTMNT_VIEW.ACCOUNT IN ('APBIT' )
AND FINSTMNT_VIEW.SITE IN ('C010885' )
AND FINSTMNT_VIEW.TIME IN ('JUN11' ) ;
1 Row selected in 4.524 Seconds
Note: FINSTMNT_VIEW is the automatically generated cube view.
CREATE OR REPLACE FORCE VIEW "SCHEMA1"."FINSTMNT_VIEW" ("BASE","REPORT_TYPE", "COMPANY", "SCENARIO", "PRODUCT", "ACCOUNT", "SITE", "TIME")
AS
SELECT "BASE", "REPORT_TYPE", "COMPANY", "SCENARIO", "PRODUCT", "ACCOUNT", "SITE", "TIME"
FROM TABLE(CUBE_TABLE('"SCHEMA1"."FINSTMNT"') ) ;
If we increase the amount of data returned by adding to the query, it only increased the query time by .4 seconds
SELECT FINSTMNT_VIEW.BASE, FINSTMNT_VIEW.REPORT_TYPE, FINSTMNT_VIEW.COMPANY, FINSTMNT_VIEW.SCENARIO, FINSTMNT_VIEW.PRODUCT, FINSTMNT_VIEW.ACCOUNT, FINSTMNT_VIEW.SITE, FINSTMNT_VIEW.TIME
FROM "SCHEMA1".FINSTMNT_VIEW FINSTMNT_VIEW
WHERE
FINSTMNT_VIEW.REPORT_TYPE IN ('MTD' )
AND FINSTMNT_VIEW.COMPANY IN ('E01' )
AND FINSTMNT_VIEW.SCENARIO IN ('ACTUAL' )
AND FINSTMNT_VIEW.PRODUCT IN ('PT' )
AND FINSTMNT_VIEW.ACCOUNT IN ('APBIT' )
AND FINSTMNT_VIEW.SITE IN ('C010885', 'C010886', 'C010891', 'C010892', 'C010887', 'C010888', 'C010897', 'C010893', 'C010890', 'C010894', 'C010896', 'C010899' )
AND FINSTMNT_VIEW.TIME IN ('JUN11' ) ;
12 rows selected - In 4.977 Seconds
If we increase the data returned even more:
SELECT FINSTMNT_VIEW.BASE, FINSTMNT_VIEW.REPORT_TYPE, FINSTMNT_VIEW.COMPANY, FINSTMNT_VIEW.SCENARIO, FINSTMNT_VIEW.PRODUCT, FINSTMNT_VIEW.ACCOUNT, FINSTMNT_VIEW.SITE, FINSTMNT_VIEW.TIME
FROM "SCHEMA1".FINSTMNT_VIEW FINSTMNT_VIEW
WHERE
FINSTMNT_VIEW.REPORT_TYPE IN ('MTD' )
AND FINSTMNT_VIEW.COMPANY IN ('ET', 'E01', 'E02', 'E03', 'E04' )
AND FINSTMNT_VIEW.SCENARIO IN ('ACTUAL' )
AND FINSTMNT_VIEW.PRODUCT IN ('PT', 'P00' )
AND FINSTMNT_VIEW.ACCOUNT IN ('APBIT' )
AND FINSTMNT_VIEW.SITE IN ('C010885', 'C010886', 'C010891', 'C010892', 'C010887', 'C010888', 'C010897', 'C010893', 'C010890', 'C010894', 'C010896', 'C010899' )
AND FINSTMNT_VIEW.TIME IN ('JUN11', 'JUL11', 'AUG11', 'SEP11', 'OCT11', 'NOV11', 'DEC11', 'JAN12') ;
118 rows selected - In 14.213 Seconds
If we take the time for each query and divide by the number of rows, we can see that querying more data results in a much more efficient query:
Time/Rows returned:
1 Row - 4.524
12 Rows - 0.4147
118 Rows - 0.120449153
It seems like there is an initial delay of approx 4 seconds when querying the CUBE_TABLE object. Using AWM to query the same data using LIMIT and RPR is almost instantaneous...
Can anyone explain what this delay is, and if there is any way to optimise the query?
Could it be the AW getting attached before each query?
Big thanks to anyone that can help!Thanks Nasar,
I have run a number of queries with logging enabled, the things you mentioned all look good:
Loop Optimization: GDILoopOpt COMPLETED
Selection filter: FILTER_LIMITS_FAST 7
ROWS_FAILED_FILTER 0
ROWS_RETURNED 1
Predicates: 7 pruned out of 7 predicates
The longest action I have seen in the log is the PAGING operation... but I do not see this on all queries.
Time Total Time OPERATION
2.263 27.864 PAGING DYN_PAGEPOOL TRACE GREW 9926KB to 59577KB
1.825 25.601 PAGING DYN_PAGEPOOL TRACE GREW 8274KB to 49651KB
1.498 23.776 PAGING DYN_PAGEPOOL TRACE GREW 6895KB to 41377KB
1.232 22.278 PAGING DYN_PAGEPOOL TRACE GREW 5747KB to 34482KB
1.17 21.046 PAGING DYN_PAGEPOOL TRACE GREW 4788KB to 28735KB
1.03 19.876 PAGING DYN_PAGEPOOL TRACE GREW 3990KB to 23947KB
2.808 18.846 PAGING DYN_PAGEPOOL TRACE GREW 3325KB to 19957KB
What is strange is that the cube operation log does not account for all of the query time. For example:
SELECT "BASE_LVL" FROM TABLE(CUBE_TABLE('"EXAMPLE"."FINSTMNT"'))
WHERE
"RPT_TYPE" = 'MTD' AND
"ENTITY" = 'ET' AND
"SCENARIO" = 'ACTUAL' AND
"PRODUCT" = 'PT' AND
"GL_ACCOUNT" = 'APBIT' AND
"CENTRE" = 'TOTAL' AND
"TIME" = 'YR09';
This query returns in 6.006 seconds using SQL Developer, if I then take the CUBE_OPERATION_LOG for this query and subtract the start time from the end time, I only get 1.67 seconds. This leaves 4.3 seconds unaccounted for... This is the same with the my other queries, see actual time and logged time below:
Query Actual Logged Variance
S3 6.006 1.67 4.336
L1 18.128 13.776 4.352
S1 4.461 0.203 4.258
L2 4.696 0.39 4.306
S2 5.882 1.575 4.307
Any ideas on what this could be or how I can capture this 4.3 second overhead?
Your help has been greatly appreciated. -
How to build sql query for view object at run time
Hi,
I have a LOV on my form that is created from a view object.
View object is read-only and is created from a SQL query.
SQL query consists of few input parameters and table joins.
My scenario is such that if input parameters are passed, i have to join extra tables, otherwise, only one table can fetch the results I need.
Can anyone please suggest, how I can solve this? I want to build the query for view object at run time based on the values passed to input parameters.
Thanks
Srikanth AddankiAs I understand you want to change the query at run time.
If this is what you want, you can use setQuery Method then use executeQuery.
http://download.oracle.com/docs/cd/B14099_19/web.1012/b14022/oracle/jbo/server/ViewObjectImpl.html#setQuery_java_lang_String_ -
Query to add a column in between existing cols of a table?
HI All,
I have two questions.
1. Query to add a column in between existing cols of a table? (not at the end. This is view of an order of output fields in a report)
2. How do I swap the contents of two columns in a table. Suppose in a table tab there are 2 cols , col1,col2 populated with some data.
I need a query(probably) to swap the col1 and col2 values . NOT AS A RESULT SET, BUT IT NEEDS TO GET CHANGED IN THE TABLE.
Please help !> 1. Query to add a column in between existing cols of
a table? (not at the end. This is view of an order of
output fields in a report)
Not really sensible ito DBMS - it does not care how you want to view the data. The sequence and formats of columns are what you/the application need to specify in the SQL's projection clause.
Also keep in mind to achieve this, the DBMS will need to rewrite the entire table to fit this new column in-between existing columns. This is not the best of ideas.
The projection of rows is dealt with SQL statements - not with the physical storage implementation.
> 2. How do I swap the contents of two columns in a
table. Suppose in a table tab there are 2 cols ,
col1,col2 populated with some data.
I need a query(probably) to swap the col1 and col2
values . NOT AS A RESULT SET, BUT IT NEEDS TO GET
CHANGED IN THE TABLE.
This seems to work:
SQL> create table foo_tab( c1 varchar2(10), c2 varchar2(10) );
Table created.
SQL> insert into foo_tab select TO_CHAR(rownum), TO_CHAR(object_id) from user_objects where rownum < 11;
10 rows created.
SQL> commit;
Commit complete.
SQL> select * from foo_tab;
C1 C2
1 55816
2 55817
3 55818
4 55721
5 105357
6 105358
7 105359
8 105360
9 105361
10 60222
10 rows selected.
SQL> update foo_tab set c1=c2, c2=c1;
10 rows updated.
SQL> select * from foo_tab;
C1 C2
55816 1
55817 2
55818 3
55721 4
105357 5
105358 6
105359 7
105360 8
105361 9
60222 10
10 rows selected.
SQL> -
SQL Query - The number of columns specified in "SQL Query" does not match t
I am creating new UDM for tablespace alert, below is my query,however its failing with error
SQL Query - The number of columns specified in "SQL Query" does not match the value specified in "SQL Query Output"
I selected Metric type is number
SQL Query Format : Two columns
Query:
SELECT d.tablespace_name,round(((a.bytes - NVL(f.bytes,0))*100/a.maxbytes),2)
used_pct FROM sys.dba_tablespaces d,(select tablespace_name, sum(bytes) bytes, sum(greatest(maxbytes,bytes)) maxbytes from sys.dba_data_files group by tablespace_name) a,(select tablespace_name, sum(bytes) bytes from sys.dba_free_space group by tablespace_name) f
WHERE d.tablespace_name = a.tablespace_name(+) AND d.tablespace_name = f.tablespace_name(+)
AND NOT (d.extent_management = 'LOCAL' AND d.contents = 'TEMPORARY');
Any clues why i am getting error.SQL> SELECT d.tablespace_name,round(((a.bytes - NVL(f.bytes,0))*100/a.maxbytes),2) used_pct
2 FROM sys.dba_tablespaces d,(select tablespace_name, sum(bytes) bytes, sum(greatest(maxbytes,bytes)) maxbytes from sys.dba_data_files group by tablespace_name) a,(select tablespace_name, sum(bytes) bytes from sys.dba_free_space group by tablespace_name) f
3 WHERE d.tablespace_name = a.tablespace_name(+) AND d.tablespace_name = f.tablespace_name(+)
4 AND NOT (d.extent_management = 'LOCAL' AND d.contents = 'TEMPORARY');
TABLESPACE_NAME USED_PCT
MGMT_TABLESPACE .82
SYSAUX 1.52
UNDOTBS1 .32
RMAN .02
CORRUPT_TS 10.63
USERS 0
SYSTEM 2.26
MGMT_ECM_DEPOT_TS .04
MGMT_AD4J_TS 0
Maybe you are looking for
-
I have a ALV report output with LINE-SIZE 1023. But when I try to execute the report in background the output row is not coming in one line but in 2 lines. When we run the report in background I gave the printer as 'LOCL' (local) and displayed in sp
-
How do you set up an account for a 7 year old?
My seven year old has a login on the family computer and has received an iPad for her birthday and wants to download apps so she can enjoy it. When I attempt to set up an iTunes account for her, she is rejected because she is too young. I would appre
-
Hello, I'm trying to run the XQuery also but even the XQLPlus interactive command line utility does not work with the sample xml file 'bib.xml' and the XQuery contained in the file 'exmpl1.xql'. I get the following error: XQE: Parsing failed 'null' W
-
Segment scheduling in OBIEE11g
Hi, I am using OBIEE11.1.16.7 mainly for marketing purpose. I can create a segment (Marketing --> Segment) and SRS it. But everytime I need to execute the Save Result Set (SRS), manual intervention is required to execute it. Is there any mechanism in
-
Security Issues with Flash Player 9
I created a swf embedded on a web document and hosted on our local server. I have no problem previewing and playing it on flash player 10 but whenever I attempted to play the same swf in flash player 9 I'm getting a popup security warning. I went ahe