Composite Studio - return row number column
Hi, I’m trying to include a row number column in my result set in Composite Studio (SQL Scratchpad), however I’m getting various error messages such as the below. Is there any way to add a row number?
An internal error has occurred.
Cause: analytical function ROW_NUMBER is not supported natively.
com.compositesw.cdms.webapi.WebapiException: An internal error has occurred.
Cause: analytical function ROW_NUMBER is not supported natively.
analytical function ROW_NUMBER is not supported natively.
at com.compositesw.cdms.webapi.PrefetchCursor$LoadPipeThread.run(PrefetchCursor.java:273)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:662)
Caused by: analytical function ROW_NUMBER is not supported natively.
at com.compositesw.server.qe.QueryResult.next(SourceFile:311)
at com.compositesw.cdms.webapi.PrefetchCursor$LoadPipeThread.run(PrefetchCursor.java:253)
... 3 more
Caused by: java.lang.IllegalArgumentException: analytical function ROW_NUMBER is not supported natively.
at com.compositesw.server.qe.physical.util.FunctionExecutor.initialize(SourceFile:232)
at com.compositesw.server.qe.physical.util.FunctionExecutor.next(SourceFile:379)
at com.compositesw.server.qe.physical.operator.FunctionNode.next(SourceFile:197)
at com.compositesw.server.qe.topology.SelectPTree.nextInternal(SourceFile:399)
at com.compositesw.server.qe.topology.SelectPTree.next(SourceFile:378)
at com.compositesw.server.qe.QueryResult.next(SourceFile:295)
... 4 more
at com.compositesw.cdms.webapi.WebapiException_SOAPSerializer.doDeserialize(WebapiException_SOAPSerializer.java:58)
at com.sun.xml.rpc.encoding.ObjectSerializerBase.deserialize(ObjectSerializerBase.java:209)
at com.sun.xml.rpc.encoding.ReferenceableSerializerImpl.deserialize(ReferenceableSerializerImpl.java:172)
at com.compositesw.cdms.webapi.service.WMetaDataSvc_dataset_fetch_Fault_SOAPSerializer.deserializeDetail(WMetaDataSvc_dataset_fetch_Fault_SOAPSerializer.java:54)
at com.sun.xml.rpc.encoding.SOAPFaultInfoSerializer.doDeserialize(SOAPFaultInfoSerializer.java:151)
at com.sun.xml.rpc.encoding.ObjectSerializerBase.deserialize(ObjectSerializerBase.java:209)
at com.sun.xml.rpc.encoding.ReferenceableSerializerImpl.deserialize(ReferenceableSerializerImpl.java:172)
at com.compositesw.cdms.webapi.service.WMetaDataSvc_Stub._readBodyFaultElement(WMetaDataSvc_Stub.java:23530)
at com.sun.xml.rpc.client.StreamingSender._send(StreamingSender.java:238)
at com.compositesw.cdms.webapi.service.WMetaDataSvc_Stub.dataset_fetch(WMetaDataSvc_Stub.java:14247)
at com.compositesw.cdms.webapi.WDataset$FetcherThread.run(WDataset.java:273)
Version Information: Studio 6.2.5.00.32 (hotfix), Build ID 131217-101258-0800-72550, Server 6.2.5.00.32 (hotfix)
Hi Tom,
I think you intended your question for the other DV community here: https://supportforums.cisco.com/community/12298251/cisco-data-virtualization
Although our parser allows the syntax of these analytic functions such as ROW_NUMBER to be submitted to us from a client, our query engine is not capable of processing it locally.
It is up to the user to ensure the resulting query plan will push the sql containing that function down to the external db (ie; oracle) to be processed there instead. Creating the query from inside a view will provide the ability to see the resulting query plan.
Which customer (company) are you with? If you need further assistance, I recommend you log a support case with Cisco.
Thank you,
Brad
Similar Messages
-
Dear All
I have three tables called Term, Curriculum and Subject. I have also created a simple query to pull out the data from all three tables in the following format:
SELECT Subject.SubjectDescription, Term.TermDescription, Curriculum.CurriculumTopic, Curriculum.CurriculumLink
FROM Term INNER JOIN
Curriculum ON Term.TermID = Curriculum.CurriculumTerm INNER JOIN
Subject ON Curriculum.CurriculumSubject = Subject.SubjectCode
However, I would like to display the data as follows with the terms appearing as columns instead:
I am not sure whether the best way to achieve this is through the SQL itself or if it's something that I need to do when binding the data to a control in ASP .net.
Please can you help me understand what I should be doing? Any help would be much appreciated.
Many thanks
DanielUsing traditional crosstab approach
SELECT Subject.SubjectDescription,
MAX(CASE WHEN Term.TermDescription = 'Autumn Term' THEN Curriculum.CurriculumTopic END) AS [Autumn Term],
MAX(CASE WHEN Term.TermDescription = 'Spring Term' THEN Curriculum.CurriculumTopic END) AS [Spring Term],
MAX(CASE WHEN Term.TermDescription = 'Summer Term' THEN Curriculum.CurriculumTopic END) AS [Summer Term],
MAX(CASE WHEN Term.TermDescription = 'Autumn Term' THEN Curriculum.CurriculumLink END) AS [Autumn Term Link],
MAX(CASE WHEN Term.TermDescription = 'Spring Term' THEN Curriculum.CurriculumLink END) AS [Spring Term Link],
MAX(CASE WHEN Term.TermDescription = 'Summer Term' THEN Curriculum.CurriculumLink END) AS [Summer Term Link]
FROM Term INNER JOIN
Curriculum ON Term.TermID = Curriculum.CurriculumTerm INNER JOIN
Subject ON Curriculum.CurriculumSubject = Subject.SubjectCode
GROUP BY Subject.SubjectDescription
One advantage of this method is you can crosstab multiple values together
Please Mark This As Answer if it helps to solve the issue Visakh ---------------------------- http://visakhm.blogspot.com/ https://www.facebook.com/VmBlogs -
Db function returning three db number columns...
Hi ,
Is it possible a db function to return three number columns fetched from a table...??
If for example , there is a db function such as...:
function x
return number
is
begin
select number_col_1 , number_col_2 , number_col_3
into var1 , var2 , var3
from table_a
where <a_condition>;
return <the_three_columns_selected>;
end;
so as in a select statement should write:
select a , b , x from a_table
many thanks ,
SimonAlternatively you can return a SQL collection:
SQL> create or replace function x (empno integer)
2 return sys.dbms_debug_vc2coll
3 is
4 var1 emp.job%type;
5 var2 emp.sal%type;
6 var3 emp.deptno%type;
7 begin
8 select job, sal, deptno
9 into var1, var2, var3
10 from emp
11 where empno = x.empno;
12
13 return sys.dbms_debug_vc2coll (var1, var2, var3);
14 end;
15 /
Function created.
SQL>
SQL> select empno, ename, x(empno) x from emp
2 where empno in (7788,7900)
3 /
EMPNO ENAME X
7788 SCOTT DBMS_DEBUG_VC2COLL('ANALYST', '3000', '20')
7900 JAMES DBMS_DEBUG_VC2COLL('CLERK', '950', '30') -
Return specific number of rows depending on the data in a column in table
Hi,
I have a table named orders which has column orderid and noofbookstoorder in addition to other columns.
I want to query the orders table and depending on the value of the 'noofbookstoorder' value return that number of rows.
Eg
Orderid noofbookstoorder
1 1
2 3
3 2
when I query the above data saying
select * from orders where orderid=2;
since it has noofbookstoorders value as 3 the query should return 3 rows and when I query
select * from orders where orderid=3;
it should return 2 rows and
select * from orders where orderid=1;
should return 1 row.
Is it possible to achieve this. If yes, then how do I write my query.
Thanks in advance.with t as (
select 1 Orderid,1 noofbookstoorder from dual union all
select 2,3 from dual union all
select 3,2 from dual
select t.*
from t,
table(cast(multiset(select 1 from dual connect by level <= noofbookstoorder) as sys.OdciNumberList))
where Orderid = <order-id>
/For example:
SQL> with t as (
2 select 1 Orderid,1 noofbookstoorder from dual union all
3 select 2,3 from dual union all
4 select 3,2 from dual
5 )
6 select t.*
7 from t,
8 table(cast(multiset(select 1 from dual connect by level <= noofbookstoorder) as sys.OdciNumberList))
9 where Orderid = 2
10 /
ORDERID NOOFBOOKSTOORDER
2 3
2 3
2 3
SQL> with t as (
2 select 1 Orderid,1 noofbookstoorder from dual union all
3 select 2,3 from dual union all
4 select 3,2 from dual
5 )
6 select t.*
7 from t,
8 table(cast(multiset(select 1 from dual connect by level <= noofbookstoorder) as sys.OdciNumberList))
9 where Orderid = 3
10 /
ORDERID NOOFBOOKSTOORDER
3 2
3 2
SQL> with t as (
2 select 1 Orderid,1 noofbookstoorder from dual union all
3 select 2,3 from dual union all
4 select 3,2 from dual
5 )
6 select t.*
7 from t,
8 table(cast(multiset(select 1 from dual connect by level <= noofbookstoorder) as sys.Odc
iNumberList))
9 where Orderid = 1
10 /
ORDERID NOOFBOOKSTOORDER
1 1
SQL> -- And if you want to select multiple orders
SQL> with t as (
2 select 1 Orderid,1 noofbookstoorder from dual union all
3 select 2,3 from dual union all
4 select 3,2 from dual
5 )
6 select t.*
7 from t,
8 table(cast(multiset(select 1 from dual connect by level <= noofbookstoorder) as sys.Odc
iNumberList))
9 where Orderid in (2,3)
10 /
ORDERID NOOFBOOKSTOORDER
2 3
2 3
2 3
3 2
3 2
SQL> SY.
Edited by: Solomon Yakobson on Oct 26, 2009 7:36 AM -
How do you return the number of Rows in a ResultSet??
How do you return the number of Rows in a ResultSet? It's easy enough to do in the SQL query using COUNT(*) but surely JDBC provides a method to return the number of rows.
The ResultSetMetaData interface provides a method for counting the number of columns but nothing for the rows.
ThanksNo good way before JDBC2.0. u can use JDBC2.0 CachedRowSet.size() to retrieve the number of rows got by a ResultSet.
-
How to display number of rows as columns in a select statement? This is on
How to display number of rows as columns in a select statement? This is on 10g R2.
Thanks,
RFor the current (ie. row 1 of 100)
row_number over (order by -pick_a_column_set) as rnfor the total number of columns returned in your query
count(*) over() as total_count -
Getting the row and column number from the caretposition
Howdy peeps
Does anyone know how to find out the Line number and column in a JTextPane by using the caret position
(you know like in text editors where it says 100:4 [line number:character position on row])
is there a simple way of doing this in a JTextPane?im getting a bit confuzzled with this :(
can someone help me out with a bit more code orientated help? :$
i have a jTextArea and a JTextField, when i change the caret in the text area i want the JTextField to show the line number and charater position on the row (e.g. 100:4)
so i assume i need to methods
e.g.
getPaneRow
myint=myPane.getCaretPosition()
do some wonderful magic code to get the line number
return line number
getPaneColumn
myint=myPane.getCaretPosition()
do some wonderful magic code to get the column number
return column number
is there a magician out there that can give me the magic powder? :) -
Setting number of rows and columns
How do I set the number of rows and columns of a table, say 2348 rows by 3 columns?
Then how do I quickly select the last row?
Also, if I enter a formula in row 1 column 2, how do I quickly copy that formula down to row 1435, or to the end of the column? Dragging seems slow and awkward.I wish to add a few words to Jerrold responce.
gjf12 wrote:
How do I set the number of rows and columns of a table, say 2348 rows by 3 columns?
Then how do I quickly select the last row?
Also, if I enter a formula in row 1 column 2, how do I quickly copy that formula down to row 1435, or to the end of the column? Dragging seems slow and awkward.
The process that you describe is inefficient.
The efficient one is :
create a table
enter the formulas in a single row
delete the rows below.
Now, each newly inserted row will contain the formulas.
From my point of view, it's when this is done that it will be interesting to apply a script adding rows.
Here is a script inserting rows.
--[SCRIPT insertRows]
Enregistrer le script en tant que Script : insertRows.scpt
déplacer le fichier ainsi créé dans le dossier
<VolumeDeDémarrage>:Users:<votreCompte>:Library:Scripts:Applications:Numbers:
Il vous faudra peut-être créer le dossier Numbers et peut-être même le dossier Applications.
Sélectionner une cellule au-dessous de laquelle vous voulez insérer des lignes.
menu Scripts > Numbers > insertRows
Le script vous demande le nombre de lignes désiré puit insère celles-ci.
--=====
L'aide du Finder explique:
L'Utilitaire AppleScript permet d'activer le Menu des scripts :
Ouvrez l'Utilitaire AppleScript situé dans le dossier Applications/AppleScript.
Cochez la case "Afficher le menu des scripts dans la barre de menus".
--=====
Save the script as a Script: insertRows.scpt
Move the newly created file into the folder:
<startup Volume>:Users:<yourAccount>:Library:Scripts:Applications:Numbers:
Maybe you would have to create the folder Numbers and even the folder Applications by yourself.
Select a cell below which you want to insert rows.
menu Scripts > Numbers > insertRows
The script ask you the number of rows to insert then it does the required insertion.
--=====
The Finder's Help explains:
To make the Script menu appear:
Open the AppleScript utility located in Applications/AppleScript.
Select the "Show Script Menu in menu bar" checkbox.
Save this script as a … Script in the "Folder Actions Scripts" folder
<startupVolume>:Library:Scripts:Folder Action Scripts:
--=====
Yvan KOENIG (VALLAURIS, France)
2010/01/13
--=====
on run
set defaultValue to 100
if my parleAnglais() then
set myInteger to my askAnumber("Insert how many rows ?", defaultValue, "i")
else
set myInteger to my askAnumber("Combien de lignes voulez-vous insérer ?", defaultValue, "i")
end if
set {dName, sName, tName, rname, rowNum1, colNum1, rowNum2, colNum2} to my getSelParams()
tell application "Numbers" to tell document dName to tell sheet sName to tell table tName
repeat myInteger times
add row below row rowNum2
end repeat
end tell
end run
--=====
on getSelParams()
local r_Name, t_Name, s_Name, d_Name, col_Num1, row_Num1, col_Num2, row_Num2
set {d_Name, s_Name, t_Name, r_Name} to my getSelection()
if r_Name is missing value then
if my parleAnglais() then
error "No selected cells"
else
error "Il n'y a pas de cellule sélectionnée !"
end if
end if
set two_Names to my decoupe(r_Name, ":")
set {row_Num1, col_Num1} to my decipher(item 1 of two_Names, d_Name, s_Name, t_Name)
if item 2 of two_Names = item 1 of two_Names then
set {row_Num2, col_Num2} to {row_Num1, col_Num1}
else
set {row_Num2, col_Num2} to my decipher(item 2 of two_Names, d_Name, s_Name, t_Name)
end if
return {d_Name, s_Name, t_Name, r_Name, row_Num1, col_Num1, row_Num2, col_Num2}
end getSelParams
--=====
set {rowNumber, columnNumber} to my decipher(cellRef,docName,sheetName,tableName)
apply to named row or named column !
on decipher(n, d, s, t)
tell application "Numbers" to tell document d to tell sheet s to tell table t to return {address of row of cell n, address of column of cell n}
end decipher
--=====
set { d_Name, s_Name, t_Name, r_Name} to my getSelection()
on getSelection()
local _, theRange, theTable, theSheet, theDoc, errMsg, errNum
tell application "Numbers" to tell document 1
repeat with i from 1 to the count of sheets
tell sheet i
set x to the count of tables
if x > 0 then
repeat with y from 1 to x
try
(selection range of table y) as text
on error errMsg number errNum
set {_, theRange, _, theTable, _, theSheet, _, theDoc} to my decoupe(errMsg, quote)
return {theDoc, theSheet, theTable, theRange}
end try
end repeat -- y
end if -- x>0
end tell -- sheet
end repeat -- i
end tell -- document
return {missing value, missing value, missing value, missing value}
end getSelection
--=====
on decoupe(t, d)
local l
set AppleScript's text item delimiters to d
set l to text items of t
set AppleScript's text item delimiters to ""
return l
end decoupe
--=====
Asks for an entry and checks that it is an floating number
set myInteger to my askAnumber(Prompt, DefaultValue, "i")
set myFloating to my askAnumber(Prompt, DefaultValue, "f")
on askAnumber(lPrompt, lDefault, ForI)
local lPrompt, lDefault, n
tell application (path to frontmost application as string)
if ForI is "f" then
set n to text returned of (display dialog lPrompt & " (" & (1.2 as text) & ")" default answer lDefault as text)
try
set n to n as number (* try to convert the value as an number *)
return n
on error
if my parleAnglais() then
display alert "The value needs to be a floating number." & return & "Please try again."
else
display alert "La valeur saisie doit être un nombre décimal." & return & "Veuillez recommencer."
end if
end try
else
set n to text returned of (display dialog lPrompt default answer lDefault as text)
try
set n to n as integer (* try to convert the value as an integer *)
return n
on error
if my parleAnglais() then
display alert "The value needs to be an integer." & return & "Please try again."
else
display alert "La valeur saisie doit être un nombre entier." & return & "Veuillez recommencer."
end if
end try -- 1st attempt
end if -- ForI…
end tell -- application
Here if the first entry was not of the wanted class
second attempt *)
tell application (path to frontmost application as string)
if ForI is "f" then
set n to text returned of (display dialog lPrompt & " (" & (1.2 as text) & ")" default answer lDefault as text)
try
set n to n as number (* try to convert the value as an number *)
return n
on error
end try
else
set n to text returned of (display dialog lPrompt default answer lDefault as text)
try
set n to n as integer (* try to convert the value as an integer *)
return n
on error
end try -- 1st attempt
end if -- ForI…
end tell -- application
if my parleAnglais() then
error "The value you entered was not numerical !" & return & "Goodbye !"
else
error "La valeur saisie n’est pas numérique !" & return & "Au revoir !"
end if
end askAnumber
--=====
on parleAnglais()
local z
try
tell application "Numbers" to set z to localized string "Cancel"
on error
set z to "Cancel"
end try
return (z is not "Annuler")
end parleAnglais
--=====
--[/SCRIPT]
Yvan KOENIG (VALLAURIS, France) mercredi 13 janvier 2010 12:43:34 -
I have a table with dates which i have converted to a number using the Month Fx. This number is then in a seperate column, which inus e for charts. I am trying to return this number only if the adjacent column contains either "nurse" or "receptionist". ie I dont want them all....
Kang,
Yes. Happy Easter! was cloudy yesterday in Austin, Texas.
I do not know where the formula you posted in your previous post came from. It is certainly not correct. What confuses me about the bottom table is I do not know how it connects to the top table.
Are the groups of people "Clinical Staff", "PDR", "Fire Training" (bottom table column A) groupings of the staff types listed in in the top table, column C?
If so then it may be worth adding some columns to define how the roles map to the training groups.
At this point it must be defined and assumed. Which row are you wanting to fill out for "Nurse" and "Nurse Practitioner"?
A little exaplaination:
the countif() function contains two arguments like this:
=countif(range, test)
the range is a group of cells (often, but not always, a column). The test must be an expression that evaluates to true or false.
so if the column is set to column C of the top table then the range would be expressed as (assuming the table name is "Table 1"):
"Table 1::$G"
to test whether the role is a "Nurse" the test (or condition) would be:
"Nurse"
putting these together you would get a countif() function like this which would return the number of Nurses (not really what you want but getting close):
=countif(Table 1::$G, "Nurse")
you actually want to count when:
A) the month is a particular month and
B) the role is a "Nurse"
you also want to count when:
C) the month is a particular month and
D) the role is a "Secialist Nurse Practitioner"
so you can use the countifs() function.
the countifs() function counts the occurances where only ALL conditions are met.
you would use the counifs() twice and add the results together like this:
=COUNTIFS(test-values1,condition1, test-values2,condition2)
you can add as many test values and conditions as you like (you must add in pairs)
To do this you should add an extra row in the header of the bottom table to hold the month number. Jan is 1, Feb is 2, etc.
Here is what I think you want:
The top table corresponds to the bottom table in your post. notice I added an extra row (to contain the month number):
B3=COUNTIFS(Table 4::$C, "Nurse", Table 4::$G, B$1) + COUNTIFS(Table 4::$C, "Specialist Nurse Practitioner", Table 4::$G, B$1)
this is shorthand for select cell B3, then type (or copy and paste from here) the formula:
=COUNTIFS(Table 4::$C, "Nurse", Table 4::$G, B$1) + COUNTIFS(Table 4::$C, "Specialist Nurse Practitioner", Table 4::$G, B$1)
no select B3 and fill to the right by hovering the cursor over the right edge of the, now select, cell B3 and dragging the little yellow circle to the right. -
How to get number of rows and columns in a two dimensional array ?
Hello,
What would be the simplest way to get number of rows and columns in a two dimensional array represented as integers ?
I'm looking for another solution as For...Each loop in case of large arrays.
Regards,
PetriHi Petri,
See a attached txt file for obtaining two arrays with upper and lower index values
Regards
Ray
Regards
Ray Farmer
Attachments:
Get2DArrayIndex.txt 2 KB -
Loop through a csv file and return the number of rows in it?
What would be simplest way to loop through a csv file and
return the number of rows in it?
<cffile action="read" file="#filename#" output="#csvstr#"
>
<LOOP THROUGH AND COUNT ROWS>ListLen(). Use chr(13) as your delimiter
-
Displaying the Row and Column number in the report
I am trying to show row and column number in the report (not just web preview). I am using Hyperion Reports Version 7.2.5.168
use a formula column/row. use RANK function in that. (e.g. Rank([A], asc) will sort the rows based on column A values in ascending order)
you can use this rank in your heading.
But frankly this is not so easy. You have to do it in a very intelligent way, so that rank gives you column number/row number any how.
Have a try and let see if you find a appropriate solution.
Regards,
Rahul -
How to display the rows number of times by giving the column values?
Hi All,
I want to display the rows number of times as the value exists in num column in the below query
with t AS
( SELECT 'venkatesh' NAME, 'hyd' LOC, 2 NUM FROM DUAL
UNION ALL
SELECT 'prasad' NAME, 'hyd' LOC, 3 NUM FROM DUAL
UNION ALL
SELECT 'krishna' NAME, 'hyd' LOC, 1 NUM FROM DUAL )
SELECT T.* FROM T
CONNECT BY ROWNUM <= NUM
Expected output:
venkatesh hyd 2
venkatesh hyd 2
prasad hyd 3
prasad hyd 3
prasad hyd 3
krishna hyd 1Edited by: Nag Aswadhati on Nov 1, 2012 12:34 AMNag Aswadhati wrote:
Hi All,
I want to display the rows number of times as the value exists in num column in the below query
Expected output:
venkatesh hyd 2
venkatesh hyd 2
prasad hyd 3
prasad hyd 3
prasad hyd 3
krishna hyd 1Using Connect By:-
with t AS
( SELECT 'venkatesh' NAME, 'hyd' LOC, 2 NUM FROM DUAL
UNION ALL
SELECT 'prasad' NAME, 'hyd' LOC, 3 NUM FROM DUAL
UNION ALL
select 'krishna' name, 'hyd' loc, 1 num from dual )
select t.name, t.loc
from t
connect by level <= num
and name = prior name
and (prior sys_guid() is not null);
NAME LOC
krishna hyd
prasad hyd
prasad hyd
prasad hyd
venkatesh hyd
venkatesh hyd
6 rows selected -
Rows to column for huge number of records
my database version is 10gr2
i want to transfer the rows to column .....i have seen the examples for small no of records but how can it be done if there are more the 1000 records in a table ...???
here is the sample data that i would like to change it to column
SQL> /
NE RAISED CLEARED RTTS_NO RING
10100000-1LU 22-FEB-2011 22:01:04/28-FEB-20 22-FEB-2011 22:12:27/28-FEB-20 SR-10/ ER-16/ CR-25/ CR-29/ CR-26/ RIDM-1/ NER5/ CR-31/ RiC600-1
11 01:25:22/ 11 02:40:06/
10100000-2LU 01-FEB-2011 12:15:58/06-FEB-20 05-FEB-2011 10:05:48/06-FEB-20 RIMESH/ RiC342-1/ 101/10R#10/ RiC558-1/ RiC608-1
11 07:00:53/18-FEB-2011 22:04: 11 10:49:18/18-FEB-2011 22:15:
56/19-FEB-2011 10:36:12/19-FEB 17/19-FEB-2011 10:41:35/19-FEB
-2011 11:03:13/19-FEB-2011 11: -2011 11:08:18/19-FEB-2011 11:
16:14/28-FEB-2011 01:25:22/ 21:35/28-FEB-2011 02:40:13/
10100000-3LU 19-FEB-2011 20:18:31/22-FEB-20 19-FEB-2011 20:19:32/22-FEB-20 INR-1/ ISR-1
11 21:37:32/22-FEB-2011 22:01: 11 21:48:06/22-FEB-2011 22:12:
35/22-FEB-2011 22:20:03/28-FEB 05/22-FEB-2011 22:25:14/28-FEB
-2011 01:25:23/ -2011 02:40:20/
10100000/10MU 06-FEB-2011 07:00:23/19-FEB-20 06-FEB-2011 10:47:13/19-FEB-20 101/IR#10
11 11:01:50/19-FEB-2011 11:17: 11 11:07:33/19-FEB-2011 11:21:
58/28-FEB-2011 02:39:11/01-FEB 30/28-FEB-2011 04:10:56/05-FEB
-2011 12:16:21/18-FEB-2011 22: -2011 10:06:10/18-FEB-2011 22:
03:27/ 13:50/
10100000/11MU 01-FEB-2011 08:48:45/22-FEB-20 02-FEB-2011 13:15:17/22-FEB-20 1456129/ 101IR11 RIMESH
11 21:59:28/22-FEB-2011 22:21: 11 22:08:49/22-FEB-2011 22:24:
52/01-FEB-2011 08:35:46/ 27/01-FEB-2011 08:38:42/
10100000/12MU 22-FEB-2011 21:35:34/22-FEB-20 22-FEB-2011 21:45:00/22-FEB-20 101IR12 KuSMW4-1
11 22:00:04/22-FEB-2011 22:21: 11 22:08:21/22-FEB-2011 22:22:
23/28-FEB-2011 02:39:53/ 26/28-FEB-2011 02:41:07/
10100000/13MU 22-FEB-2011 21:35:54/22-FEB-20 22-FEB-2011 21:42:58/22-FEB-20 LD MESH
11 22:21:55/22-FEB-2011 22:00: 11 22:24:52/22-FEB-2011 22:10:could you do something like this?
with t as (select '10100000-1LU' NE, '22-FEB-2011 22:01:04/28-FEB-2011 01:25:22/' raised , '22-FEB-2011 22:12:27/28-FEB-2011 02:40:06/' cleared from dual union
select '10100000-2LU', '01-FEB-2011 12:15:58/06-FEB-2011 07:00:53/18-FEB-2011 22:04:56/19-FEB-2011 10:36:12/19-FEB-2011 11:03:13/19-FEB-2011 11:16:14/28-FEB-2011 01:25:22/',
'05-FEB-2011 10:05:48/06-FEB-2011 10:49:18/18-FEB-2011 22:15:17/19-FEB-2011 10:41:35/19-FEB-2011 11:08:18/19-FEB-2011 11:21:35/28-FEB-2011 02:40:13/' from dual
select * from(
select NE, regexp_substr( raised,'[^/]+',1,1) raised, regexp_substr( cleared,'[^/]+',1,1) cleared from t
union
select NE, regexp_substr( raised,'[^/]+',1,2) , regexp_substr( cleared,'[^/]+',1,2) cleared from t
union
select NE, regexp_substr( raised,'[^/]+',1,3) , regexp_substr( cleared,'[^/]+',1,3) cleared from t
union
select NE, regexp_substr( raised,'[^/]+',1,4) , regexp_substr( cleared,'[^/]+',1,4) cleared from t
union
select NE, regexp_substr( raised,'[^/]+',1,5) , regexp_substr( cleared,'[^/]+',1,5) cleared from t
union
select NE, regexp_substr( raised,'[^/]+',1,6) , regexp_substr( cleared,'[^/]+',1,6) cleared from t
union
select NE, regexp_substr( raised,'[^/]+',1,7) , regexp_substr( cleared,'[^/]+',1,7) cleared from t
union
select NE, regexp_substr( raised,'[^/]+',1,8) , regexp_substr( cleared,'[^/]+',1,8) cleared from t
union
select NE, regexp_substr( raised,'[^/]+',1,9) , regexp_substr( cleared,'[^/]+',1,9) cleared from t
union
select NE, regexp_substr( raised,'[^/]+',1,10) , regexp_substr( cleared,'[^/]+',1,10) cleared from t
union
select NE, regexp_substr( raised,'[^/]+',1,11) , regexp_substr( cleared,'[^/]+',1,11) cleared from t
where nvl(raised,cleared) is not null
order by ne
NE RAISED CLEARED
10100000-1LU 28-FEB-2011 01:25:22 28-FEB-2011 02:40:06
10100000-1LU 22-FEB-2011 22:01:04 22-FEB-2011 22:12:27
10100000-2LU 28-FEB-2011 01:25:22 28-FEB-2011 02:40:13
10100000-2LU 19-FEB-2011 10:36:12 19-FEB-2011 10:41:35
10100000-2LU 19-FEB-2011 11:03:13 19-FEB-2011 11:08:18
10100000-2LU 19-FEB-2011 11:16:14 19-FEB-2011 11:21:35
10100000-2LU 06-FEB-2011 07:00:53 06-FEB-2011 10:49:18
10100000-2LU 01-FEB-2011 12:15:58 05-FEB-2011 10:05:48
10100000-2LU 18-FEB-2011 22:04:56 18-FEB-2011 22:15:17you should be able to do it without all those unions using a connect by but I can't quite get it to work
the following doesn't work but maybe someone can answer.
select NE, regexp_substr( raised,'[^/]+',1,level) raised, regexp_substr( cleared,'[^/]+',1,level) cleared from t
connect by prior NE = NE and regexp_substr( raised,'[^/]+',1,level) = prior regexp_substr( raised,'[^/]+',1,level + 1)Edited by: pollywog on Mar 29, 2011 9:38 AM
here it is with the model clause which gets rid of all the unions.
WITH t
AS (SELECT '10100000-1LU' NE,
'22-FEB-2011 22:01:04/28-FEB-2011 01:25:22/' raised,
'22-FEB-2011 22:12:27/28-FEB-2011 02:40:06/' cleared
FROM DUAL
UNION
SELECT '10100000-2LU',
'01-FEB-2011 12:15:58/06-FEB-2011 07:00:53/18-FEB-2011 22:04:56/19-FEB-2011 10:36:12/19-FEB-2011 11:03:13/19-FEB-2011 11:16:14/28-FEB-2011 01:25:22/',
'05-FEB-2011 10:05:48/06-FEB-2011 10:49:18/18-FEB-2011 22:15:17/19-FEB-2011 10:41:35/19-FEB-2011 11:08:18/19-FEB-2011 11:21:35/28-FEB-2011 02:40:13/'
FROM DUAL)
SELECT *
FROM (SELECT NE, raised, cleared
FROM t
MODEL RETURN UPDATED ROWS
PARTITION BY (NE)
DIMENSION BY (0 d)
MEASURES (raised, cleared)
RULES
ITERATE (1000) UNTIL raised[ITERATION_NUMBER] IS NULL
(raised [ITERATION_NUMBER + 1] =
REGEXP_SUBSTR (raised[0],
'[^/]+',
1,
ITERATION_NUMBER + 1),
cleared [ITERATION_NUMBER + 1] =
REGEXP_SUBSTR (cleared[0],
'[^/]+',
1,
ITERATION_NUMBER + 1)))
WHERE raised IS NOT NULL
ORDER BY NEEdited by: pollywog on Mar 29, 2011 10:34 AM -
Add column with row number to table
Hi,
to a table view I'd like to add a new column that contains the row number for each row.
I have many data sources (twelve) and with the union operator I create one output dataset. The output data is sorted by the arrangement of the input ports of the union operator.
Is there a way to add a column with its corresponding entry number?
Regards, FTI have a similar question to the original post. It seems your answer will fill the new field in all rows with the same value. But, what if we want an actual row number?
I am simply looking to add a row number to a table. I only have one data source. The business scenario is that the output of the data service is sorted in descending order on value. I want to be able to select the first 10 (i.e. the top 10 items based on that value).
Even if I can solve my business scenario without using a row number field after the sort, it seems like a technique that would come in handy.
Any ideas? I'm pretty new to using Visual Composer so I may be missing something obvious.
Maybe you are looking for
-
This is a 500 GB G-Drive mobile external hard drive that I've been using since I got my MacBook Pro in '09. So I've had it from Leopard through Lion. Should I have been erasing it each time a new operating system comes out and starting over?
-
Why do I need to re-register my iPhone3gs after unlocking
I recently received an unlocking code from my service provider, O2. I followed their instructions but was horrified initially by a message which stated "iTunes has detected an iPhone in recovery mode. You must restore this iPhone before it can be use
-
How to know text details like text id, text name, etc
hi how to know the header text details like text id, text name, text object that details. to pass in Read_text. Thanks sri
-
Error in SLG1 after reversal EA13
Hello friends, we have an issue when reversing a document with EA13. First of all the document was reversed, however we had a error message "S:EDER:541". We were able to apply note 1733506 . Now we are getting the following error (but document is sti
-
Error Orabpel 10903 failed to read wsdl - please help me
Dear Experts, I am struggling hard with these errors. Actually I am having 7 bpel process, one among that 7 integrates all the process. I have deployed and tested in my machine it is working perfectly fine. I just copy the entire set up to another ma