Rows to Columns within PL/SQL or sql.
Hi i need to get this data which is being extracted using a sql query with a prior by clause and is being displayed as rows. to display as seperate column on one row., the values need to be in their own column on the same row...
table layout
Level 1 Level2 Level3 Level4 Level5
column1 column2 column3
270767 197851 1
64631 230693 2
33115 230481 3
229148 209655 4
So i need to get these rows into the columns on the table........ But the rows can go upto 11 and beyond so i will create a table with lots of columns, but for now
just using 5 , But i want the script so it can just keep going through the columns not just restricted to 5....
Hi,
Use SYS_CONNECT_BY_PATH to get a delimited list of all the values, in order by LEVEL.
I would just display that: you don't have to know how many LEVELs there might be, and therefore how many columns you have to hard-code into the query.
If you really do have to split the list into separate columns, use
REGEXP_SUBSTR ( sys_connect_by_path_results
, '[^,]+' -- where , is the delimiter: any other single character would do as well
, 1
, n
)to get the n-th item on the list. You have to hard-code the worst case (the maximum number of levels), or use dynamic SQL to do it for you.
For a more specific answer, post a more specific question.
Include:
(1) The version of Oracle (and any other relevant software) you're using
(2) A little sample data (just enough to show what the problem is) from all the relevant tables
(3) The results you want from that data
(4) Your best attempt so far (formatted)
Executable SQL statements (like "CREATE TABLE AS ..." or "INSERT ..." statements) are best for (2).
If you can present your problem using commonly available tables (for example, tables in scott schema, where emp has a nice hierarchy), then you can omit (2).
Formatted tabular output is okay for (3). Type these 6 characters
(small letters only, inside curly brackets) before and after formatted, to preserve spacing.
Similar Messages
-
Rows To Columns Or Pivot Table with SQL Model over two tables
hi @all
oracle 10.2.0.4
i have following situation
table_1
t1_id t1_name
1 reggie
table_2
t2_id t2_t1_id t2_start_date t2_end_date
1 1 01.01.2008 31.03.2008
2 1 01.06.2008 31.07.2008
cardinality from table_1 to table_2 is one to many
now i need this
t1_name t2_start_date_1 t2_end_date_1 t2_start_date_2 t2_end_date_2 t2_start_date_x t2_end_date_x
reggie 01.01.2008 31.03.2008 01.06.2008 31.07.2008
i think the max occurrence of start/enddate can be 15
can somebody helpHello,
One way, assuming 15 is the maximum:
SELECT t1.name,
t2.t2_start_date t2_start_date_1, t2.t2_end_date t2_end_date_1,
LEAD(t2.t2_start_date,1) OVER (PARTITION BY t2.t2_t1_id ORDER BY t2.t2_start_date) t2_start_date_2,
LEAD(t2.t2_end_date,1) OVER (PARTITION BY t2.t2_t1_id ORDER BY t2.t2_end_date)t2_end_date_2,
LEAD(t2.t2_start_date,2) OVER (PARTITION BY t2.t2_t1_id ORDER BY t2.t2_start_date)t2_start_date_3,
LEAD(t2.t2_end_date,2) OVER (PARTITION BY t2.t2_t1_id ORDER BY t2.t2_end_date)t2_end_date_3,
LEAD(t2.t2_start_date,3) OVER (PARTITION BY t2.t2_t1_id ORDER BY t2.t2_start_date)t2_start_date_4,
LEAD(t2.t2_end_date,3) OVER (PARTITION BY t2.t2_t1_id ORDER BY t2.t2_end_date)t2_end_date_4,
LEAD(t2.t2_start_date,4) OVER (PARTITION BY t2.t2_t1_id ORDER BY t2.t2_start_date)t2_start_date_5,
LEAD(t2.t2_end_date,4) OVER (PARTITION BY t2.t2_t1_id ORDER BY t2.t2_end_date)t2_end_date_5,
LEAD(t2.t2_start_date,5) OVER (PARTITION BY t2.t2_t1_id ORDER BY t2.t2_start_date)t2_start_date_6,
LEAD(t2.t2_end_date,5) OVER (PARTITION BY t2.t2_t1_id ORDER BY t2.t2_end_date)t2_end_date_6,
LEAD(t2.t2_start_date,6) OVER (PARTITION BY t2.t2_t1_id ORDER BY t2.t2_start_date)t2_start_date_7,
LEAD(t2.t2_end_date,6) OVER (PARTITION BY t2.t2_t1_id ORDER BY t2.t2_end_date)t2_end_date_7,
LEAD(t2.t2_start_date,7) OVER (PARTITION BY t2.t2_t1_id ORDER BY t2.t2_start_date)t2_start_date_8,
LEAD(t2.t2_end_date,7) OVER (PARTITION BY t2.t2_t1_id ORDER BY t2.t2_end_date)t2_end_date_8,
LEAD(t2.t2_start_date,8) OVER (PARTITION BY t2.t2_t1_id ORDER BY t2.t2_start_date)t2_start_date_9,
LEAD(t2.t2_end_date,8) OVER (PARTITION BY t2.t2_t1_id ORDER BY t2.t2_end_date)t2_end_date_9,
LEAD(t2.t2_start_date,9) OVER (PARTITION BY t2.t2_t1_id ORDER BY t2.t2_start_date)t2_start_date_10,
LEAD(t2.t2_end_date,9) OVER (PARTITION BY t2.t2_t1_id ORDER BY t2.t2_end_date)t2_end_date_10,
LEAD(t2.t2_start_date,10) OVER (PARTITION BY t2.t2_t1_id ORDER BY t2.t2_start_date)t2_start_date_11,
LEAD(t2.t2_end_date,10) OVER (PARTITION BY t2.t2_t1_id ORDER BY t2.t2_end_date)t2_end_date_11,
LEAD(t2.t2_start_date,11) OVER (PARTITION BY t2.t2_t1_id ORDER BY t2.t2_start_date)t2_start_date_12,
LEAD(t2.t2_end_date,11) OVER (PARTITION BY t2.t2_t1_id ORDER BY t2.t2_end_date)t2_end_date_12,
LEAD(t2.t2_start_date,12) OVER (PARTITION BY t2.t2_t1_id ORDER BY t2.t2_start_date)t2_start_date_13,
LEAD(t2.t2_end_date,12) OVER (PARTITION BY t2.t2_t1_id ORDER BY t2.t2_end_date)t2_end_date_13,
LEAD(t2.t2_start_date,13) OVER (PARTITION BY t2.t2_t1_id ORDER BY t2.t2_start_date)t2_start_date_14,
LEAD(t2.t2_end_date,13) OVER (PARTITION BY t2.t2_t1_id ORDER BY t2.t2_end_date)t2_end_date_14,
LEAD(t2.t2_start_date,14) OVER (PARTITION BY t2.t2_t1_id ORDER BY t2.t2_start_date) t2_start_date_15,
LEAD(t2.t2_end_date,14) OVER (PARTITION BY t2.t2_t1_id ORDER BY t2.t2_end_date) t2_end_date_15
FROM table_1 t1
JOIN table_2 t2 ON (t1.t1_id = t2.t2_t1_id)
WHERE (t2.t2_start_date, t2.t2_end_date) IN (
SELECT MIN(t2_start_date), MIN(t2_end_date)
FROM table_2 t22
WHERE t2.t2_id = t22.t2_id);
Edit
Fixed incomplete code -
SAP HANA View Row to Column Transpose
Hello Guys
What is the best way to transpose rows to columns within a Hana Model. I can find many articles that talk about Column to Row transpose.
Source:
Customer
Dim 1
Dim 2
1000
A
1100
1000
B
1200
1000
C
1300
Target:
Customer
A
B
C
1000
1100
1200
1300
ThanksNot as an answer, but as a question: Are there three rows *only* resp. could they be granted? Or you wanna have the amount dynamic, i.e. count the same customers and than created the amount of required columns?
-
Can anybody help....SQL to display row as column and column as rows
Can anybody help in writing a SQL to display row as column and column as rows?
Thankscheck this link:
Re: Creating Views - from rows to a new column? -
Transposing SQL rows to columns
Hi All -
I have a query which returns result set as follows:
year amt_type amount
2001 vacation 1000
2001 medical 1000
2001 college 15000
2002 vacation 800
2002 medical 1000
2002 college 10000
2003 vacation 400
2003 medical 2000
2003 college 80000.
I am trying to make the years 2001, 2002, and 2003 as columns and trying to
achieve the below output
Amt type 2001 2002 2003
vacation 1000 800 400
medical 1000 1000 2000
college 15000 10000 8000
I am able to achieve this perfectly on client side. Right now I am trying to
achieve the same through using SQL. I am using
DECODE to achieve but my result set looks like below
Amt type 2001 2002 2003
vacation 1000
vacation 800
vacation 400
medical 1000
medical 1000
medical 2000
college 15000
college 10000
college 8000
I am trying this on oracle. I am new to this concept. can anyone who worked in
similar situation help me. Also, the years may change depending upon the dropdown
selection on client page. Can I transpose rows to columns in SQL for dynamic
values
Thankswith t as (
select 2001 year,'vacation' amt_type,1000 amount from dual union all
select 2001,'medical',1000 from dual union all
select 2001,'college',15000 from dual union all
select 2002,'vacation',800 from dual union all
select 2002,'medical',1000 from dual union all
select 2002,'college',10000 from dual union all
select 2003,'vacation',400 from dual union all
select 2003,'medical',2000 from dual union all
select 2003,'college',80000 from dual
select amt_type,
sum(case year when 2001 then amount end) "2001",
sum(case year when 2002 then amount end) "2002",
sum(case year when 2003 then amount end) "2003"
from t
group by amt_type
AMT_TYPE 2001 2002 2003
medical 1000 1000 2000
college 15000 10000 80000
vacation 1000 800 400
SQL> SY. -
Hi,
How can i convert rows to column in sql
I have table with the two columns child_table_name and parent_table_name as below. How can convert the below table to the expected output. show all the child and corresponding parent_table in one row. Please help to write sql
Child_table_Name Parent_Table_name
abc bbb
abc aaa
def ccc
def ttt
Expected Output
abc bbb aaa
def ccc ttt
Thanks,
ChHi,
That's called a Pivot, and here's one way to do it:
WITH got_r_num AS
SELECT child_table_name
, parent_table_name
, ROW_NUMBER () OVER ( PARTITION BY child_table_name
ORDER BY parent_table_name
) AS r_num
FROM table_x
SELECT *
FROM got_r_num
PIVOT ( MAX (parent_table_name)
FOR r_num IN ( 1 AS parent_1
, 2 AS parent_2
, 3 AS parent_3
The forum FAQ has a page devoted to pivots:
https://forums.oracle.com/message/9362005#9362005
The query above can show up to 3 parents per child. If you know you'll never have more than 2 (as in your message) then you don't need the line that defines parent_3. On the other hand, if you might need more than 3 parents, you can add as many more as you need.
I hope this answers your question.
If not, post a little sample data (CREATE TABLE and INSERT statements, relevant columns only) for all tables involved, and also post the results you want from that data.
Point out where the statement above is getting the wrong results, and explain, using specific examples, how you get the right results from the given data in those places. Remember that there is no built-in order to the rows in a table, so if your explanationuses words like "first" or "latest", define what they mean in terms of the data in your table.
Always say which version of Oracle you're using (e.g., 11.2.0.2.0).
See the forum FAQ: https://forums.oracle.com/message/9362002 -
Converting rows to columns using t-sql
Hi All,
I have a table with 3 columns, let say ID1 , ID2, Flag
My Source data looks like this..
ID1 ID2 Flag
1 1 0
1 2 0
1 3 0
2 7 0
2 8 1
2 9 0
4 5 0
Now My output should look like this..
ID1 Newcol1 NewFlag1 Newcol2 NewFlag2 Newcol3 NewFlag3
1 1 0
2 0 3
0
2 7 0
8 1 9
0
4 5 0
null null null null
Basically I want to convert rows to columns and to get above output I need t-SQL query.
Thanks in advance
RH
sqlYou can do it by this query:
declare @table table ( ID1 int, ID2 int, Flag int)
insert @table values ( 1,1,0 ),( 1,2,0 ),( 1,3,0 ),( 2,7,0 ),( 2,8,1 ),( 2,9,0 ),( 4,5,0 )
WITH cte1
AS ( SELECT Id1 ,
ROW_NUMBER() over (partition by ID1 order by ID1 ) as Sequence ,
ID2 ,
Flag
FROM @table
cte2
AS ( SELECT Id1 ,
ColumnTitle + LTRIM(RTRIM(STR(Sequence))) AS ColumnTitle ,
ColumnData
FROM cte1 UNPIVOT ( ColumnData FOR ColumnTitle IN ( [ID2], [Flag] ) ) AS UP
SELECT Id1 ,
[ID21] FirstID2 ,
[Flag1] FirstFlag ,
[ID22] SecondID2 ,
[Flag2] SecondFlag ,
[ID23] ThirdID2 ,
[Flag3] ThirdFlag
FROM cte2 PIVOT ( MAX(ColumnData) FOR ColumnTitle IN ( [ID21],
[Flag1],
[ID22],
[Flag2],
[ID23],
[Flag3] ) ) PV
If you want to know more detail, please visit my old article about this method:
T-SQL: PIVOT Ordered pair Columns
T-SQL e-book by TechNet Wiki Community
My Blog
My Articles -
How to convert rows to columns in sql server 2008
How to convert rows to columns in sql server 2008 using the GROUP BY function? (only one query allowed)
Lookup the Pivot transformation. From BOL:
The Pivot transformation makes a normalized data set into a less normalized
but more compact version by pivoting the input data on a column value. For
example, a normalized Orders data set that lists customer name, product, and quantity purchased typically has multiple rows for any customer who purchased multiple products, with each row for that customer showing order
details for a different product. By pivoting the data set on the product column, the Pivot transformation can output a data set with a
single row per customer. That single row lists all the purchases by the customer, with the product names shown as column names, and the quantity shown as a value in the product column. Because not every customer purchases every product, many columns may contain
null values.
When a dataset is pivoted, input columns perform different roles in the pivoting process. A column can participate in the following ways:
The column is passed through unchanged to the output. Because many input rows
can result only in one output row, the transformation copies only the first
input value for the column.
The column acts as the key or part of the key that identifies a set of
records.
The column defines the pivot. The values in this column are associated with
columns in the pivoted dataset.
The column contains values that are placed in the columns that the pivot
creates.
Paul -
Referring to Cursor Row and Column in Dynamic SQL
I have a procedure that dynamically reads a schema name and table name from an input table. The code then needs to loop through all rows and columns of each table and output the data. I'm 95% done with what I want to accomplish, but there is one small bug. The line dbms_output.put(*col.column_name* || '',''); ' ||
should refer to something like rec.col.column_name so that it gets the column of the current record. Right now it just displays the column name for each record instead of the actual value. Can anyone help me tweak the code to get the actual value?
CREATE OR REPLACE PACKAGE BODY some_proc IS
-- Function and procedure implementations
PROCEDURE create_files IS
CURSOR c_tbls IS
SELECT * FROM tbl_list;
l_sql VARCHAR2(4000);
BEGIN
--Loop through all tables
FOR tbl IN c_tbls LOOP
l_sql := 'DECLARE ' || ' CURSOR c_tbl_recs IS ' || ' SELECT * ' ||
' FROM ' || tbl.schema_name || '.' || tbl.table_name || '; ' ||
' t_tbl_rowtype c_tbl_recs%ROWTYPE; ' || 'BEGIN ' ||
' FOR rec IN c_tbl_recs LOOP ' ||
' FOR col IN (SELECT column_name ' ||
' FROM dba_tab_cols ' ||
' WHERE owner = ''' || tbl.schema_name || '''' ||
' AND table_name = ''' || tbl.table_name || '''' ||
' ORDER BY column_id) LOOP ' ||
*' dbms_output.put(col.column_name || '',''); ' ||* ' END LOOP; dbms_output.put_line(''''); END LOOP; ' ||
'END; ';
--dbms_output.put_line(l_sql);
EXECUTE IMMEDIATE l_sql;
END LOOP;
EXCEPTION
WHEN OTHERS THEN
dbms_output.put_line(SQLERRM);
END;
END;Is it this what you are looking for?
(it took some minutes)
create or replace
package some_proc is
procedure create_files;
end;
CREATE OR REPLACE
PACKAGE BODY some_proc
IS
-- Function and procedure implementations
PROCEDURE create_files
IS
CURSOR c_tbls
IS
SELECT * FROM tbl_list;
CURSOR c_cols (p_table_owner VARCHAR2, p_table_name VARCHAR2)
IS
SELECT column_name
FROM all_tab_columns
WHERE owner =p_table_owner
AND table_name=p_table_name
ORDER BY all_tab_columns.column_id;
l_sql VARCHAR2(32000);
separator VARCHAR2(1):=';';
BEGIN
--Loop through all tables
FOR tbl IN c_tbls
LOOP
dbms_output.put_line('TABLE: '||tbl.schema_name||'.'||tbl.table_name);
l_sql := 'DECLARE ' ;
l_sql := l_sql|| ' CURSOR c_tbl_recs IS ' ;
l_sql := l_sql||' SELECT * FROM ' || tbl.schema_name || '.' || tbl.table_name || '; ' ;
l_sql := l_sql||' linenr number:=1; ';
l_sql := l_sql||'BEGIN ' ;
l_sql := l_sql|| ' FOR rec IN c_tbl_recs LOOP ';
FOR c IN c_cols(tbl.schema_name,tbl.table_name)
LOOP
l_sql:=l_sql ||' if linenr=1 then dbms_output.put('''||c.column_name||''||separator||'''); end if; ' ;
END LOOP;
l_sql :=l_sql||' dbms_output.put_line(''''); linenr:=linenr+1; ';
FOR c IN c_cols(tbl.schema_name,tbl.table_name)
LOOP
l_sql:=l_sql ||' dbms_output.put(rec.'||c.column_name||'||'''||separator||'''); ' ;
END LOOP;
l_sql:=l_sql||' end loop; ';
l_sql:=l_sql||' dbms_output.put_line(''''); ';
l_sql:=l_sql||' dbms_output.put_line(''''); ';
l_sql:=l_sql||'end;';
EXECUTE IMMEDIATE l_sql;
END LOOP;
EXCEPTION
WHEN OTHERS THEN
dbms_output.put_line(SQLERRM);
END;
END;
/ -
No of columns in a table and SQL performance
How does the table size effects sql performance?
I am comparing 2 tables , with same number of rows(54 million rows) ,
table1(columns a,b,c,d,e,f..) has 40 columns
table2 (columns (a,b,c,d)
SQL uses columns a,b.
SQL using table2 runs in 1 sec.
SQL using table1 runs in 30 min.
Can any one please let me know how the table size , number of columns in table efects the performance of SQL's?
Thanks
jeevan.user600431 wrote:
This is a general question. I just want to compare table with more columns and table with less columns with same number of rows .
I am finding that table with less columns is good in performance , than the table with more columns.
Assuming there are no row chains , will there be any difference in performance with the number of columns in a table.Jeevan,
the question is not how many columns your table has, but how large your table segment is. If your query runs a full table scan it has to read through the whole table segment, so in that case the size of the table matters.
A table having more columns potentially has a larger row size than a table with less columns but this is not a general rule. Think of large columns, e.g. varchar2 columns, think of blank (NULL) columns and you can easily end up with a table consisting of a single column taking up more space per row than a table with 200 columns consisting only of varchar2(1) columns.
Check the DBA/ALL/USER_SEGMENTS view to determine the size of your two table segments. If you gather statistics on the tables then the dictionary will contain information about the average row size.
If your query is using indexes then the size of the table won't affect the query performance significantly in many cases.
Regards,
Randolf
Oracle related stuff blog:
http://oracle-randolf.blogspot.com/
SQLTools++ for Oracle (Open source Oracle GUI for Windows):
http://www.sqltools-plusplus.org:7676/
http://sourceforge.net/projects/sqlt-pp/ -
Can't select char type columns using ODBC link to SQL Server 2K
I have set up a db link using hsodbc from 8.1.7 to SQL Server 2000. I can select numeric and date columns from the
SQL Server table with no problem. But any character datatype (nchar or nvchar) column name included in the query
returns an ORA-00904 ("invalid column name"). I know the column names are valid for SQL Server and can access
these columns via EXCEL using the same user id and data source that is used for the link. I don't have a clue as to why ORACLE can't "see" the character type columns. Following is the hs trace file (HS_FDS_TRACE_LEVEL = debug) generated for "select assay_name from bio_assay@sqlsrvl":
FRIDAY SEP 05 2003 10:39:47.674
(0) hoagprd(2); Entered.
(0) [Generic Connectivity Using ODBC] version: 2.0.4.0.0010
(0) connect string is:
(0) YEAR2000_POLICY=-1;CTL_DEBUG=T;CONSUMER_API=1;SESSION_BEHAVIOR_FLAGS=4;PARSER_-
(0) DEPTH=2000;EXEC_FLAGS =
(0) 131080;defTdpName=SQLSRVL;binding=(SQLSRVL,ODBC,"LIBERTY");
(0) ORACLE GENERIC GATEWAY Log File Started at 05-Sep-03 10:39:47
(0) Class version: 65
(0) hoagprd(2); Exited with retcode = 0.
(0) hoainit(3); Entered.
(0) hoainit(3); Exited with retcode = 0.
(0) hoalgon(7); Entered. name = XXXXXXXXXXX.
(0) Created new ODBC connection (28382608)
(0) Silent DB Function!!
(0) (Last message occurred 4 times)
(0) hoalgon(7); Exited with retcode = 0.
(0) hoaulcp(4); Entered.
(0) hoaulcp(4); Exited with retcode = 0.
(0) hoauldt(5); Entered.
(0) hoauldt(5); Exited with retcode = 0.
(0) hoabegn(9); Entered. formatID = 306206, hoagttid
(0) =XXXXXXXXXXXXXXXXXXXXXXXX, hoagtbid = , tflag = 0, initial = 1
(0) hoabegn(9); Exited with retcode = 0.
(0) hoapars(15); Entered. stmtType = 0, id = 1.
(0) nvOUT (P:\Src\QP\QP_SQTXT.C 55): SELECT * FROM "BIO_ASSAY"
(0) odbc_rec: select * from "BIO_ASSAY"
(0) Silent DB Function!!
(0) nvOUT (P:\Src\QP\QPT2SEXE.C 929):
(0) SELECT "T0000"."WH_ADDED_DATE" AS c00010, "T0000"."ASSAY_MODIFIED_TIME" AS c0009, "T0000"."ASSAY_CREATED_TIME" AS c0008, "T0000"."ASSAY_DATE_COMPLETED" AS c0007, "T0000"."ASSAY_DATE_PLANNED" AS c0006, "T0000"."ASSAY_DATE_STARTED" AS c0005, "T0000"."ASSAY_STATUS_NO" AS c0004, "T0000"."TIMEFRAME_KEY" AS c0003, "T0000"."TARGET_KEY" AS c0002, "T0000"."ENVIRONMENT_KEY" AS c0001, "T0000"."ASSAY_KEY" AS c0000 FROM "BIO_ASSAY" T0000
(0) nvOUT (P:\Src\QP\QPT2SEXE.C 932):
(0) <<<<<<<<<<<<<<<<<<< Execution Strategy Begin <<<<<<<<<<<<<<<<<<<<<<<<<<<<
(0) Original SQL:
(0) SELECT * FROM "BIO_ASSAY"
(0)
(0)
(0) Accessing Database "SQLSRVL" with SQL:
(0) SELECT "T0000"."WH_ADDED_DATE" AS c00010, "T0000"."ASSAY_MODIFIED_TIME" AS c0009, "T0000"."ASSAY_CREATED_TIME" AS c0008, "T0000"."ASSAY_DATE_COMPLETED" AS c0007, "T0000"."ASSAY_DATE_PLANNED" AS c0006, "T0000"."ASSAY_DATE_STARTED" AS c0005, "T0000"."ASSAY_STATUS_NO" AS c0004, "T0000"."TIMEFRAME_KEY" AS c0003, "T0000"."TARGET_KEY" AS c0002, "T0000"."ENVIRONMENT_KEY" AS c0001, "T0000"."ASSAY_KEY" AS c0000 FROM "BIO_ASSAY" T0000
(0)
(0)
Execution Strategy End >>>>>>>>>>>>>>>>>>>>>>>>>>>>(0) hoapars(15); Exited with retcode = 0.
(0) hoaopen(19); Entered. id = 1.
(0) hoaopen(19); Exited with retcode = 0.
(0) hoadscr(16); Entered. id = 1.
(0) hoastmt(195); Array fetch size is: 1.
(0) ------ hoadscr() -------:
(0) hoadamsz: 11, hoadasiz: 11, hoadambr: 1, hoadabrc: 1
(0) row 0 - hoadambl: 20, hoadadty: 134, hoadaprc: 19, hoadacst: 0
(0) row 0 - hoadascl: 0, hoadanul: 0, hoadanml: 9, hoadanam: ASSAY_KEY, hoadabfl:
(0) 20, hoadamod: 0
(0) row 1 - hoadambl: 20, hoadadty: 134, hoadaprc: 19, hoadacst: 0
(0) row 1 - hoadascl: 0, hoadanul: 0, hoadanml: 15, hoadanam: ENVIRONMENT_KEY,
(0) hoadabfl: 20, hoadamod: 0
(0) row 2 - hoadambl: 20, hoadadty: 134, hoadaprc: 19, hoadacst: 0
(0) row 2 - hoadascl: 0, hoadanul: 1, hoadanml: 10, hoadanam: TARGET_KEY,
(0) hoadabfl: 20, hoadamod: 0
(0) row 3 - hoadambl: 20, hoadadty: 134, hoadaprc: 19, hoadacst: 0
(0) row 3 - hoadascl: 0, hoadanul: 0, hoadanml: 13, hoadanam: TIMEFRAME_KEY,
(0) hoadabfl: 20, hoadamod: 0
(0) row 4 - hoadambl: 2, hoadadty: 7, hoadaprc: 5, hoadacst: 0
(0) row 4 - hoadascl: 0, hoadanul: 1, hoadanml: 15, hoadanam: ASSAY_STATUS_NO,
(0) hoadabfl: 2, hoadamod: 0
(0) row 5 - hoadambl: 7, hoadadty: 167, hoadaprc: 0, hoadacst: 0
(0) row 5 - hoadascl: 0, hoadanul: 1, hoadanml: 18, hoadanam: ASSAY_DATE_STARTED,
(0) hoadabfl: 7, hoadamod: 0
(0) row 6 - hoadambl: 7, hoadadty: 167, hoadaprc: 0, hoadacst: 0
(0) row 6 - hoadascl: 0, hoadanul: 1, hoadanml: 18, hoadanam: ASSAY_DATE_PLANNED,
(0) hoadabfl: 7, hoadamod: 0
(0) row 7 - hoadambl: 7, hoadadty: 167, hoadaprc: 0, hoadacst: 0
(0) row 7 - hoadascl: 0, hoadanul: 1, hoadanml: 20, hoadanam:
(0) ASSAY_DATE_COMPLETED, hoadabfl: 7, hoadamod: 0
(0) row 8 - hoadambl: 7, hoadadty: 167, hoadaprc: 0, hoadacst: 0
(0) row 8 - hoadascl: 0, hoadanul: 0, hoadanml: 18, hoadanam: ASSAY_CREATED_TIME,
(0) hoadabfl: 7, hoadamod: 0
(0) row 9 - hoadambl: 7, hoadadty: 167, hoadaprc: 0, hoadacst: 0
(0) row 9 - hoadascl: 0, hoadanul: 1, hoadanml: 19, hoadanam: ASSAY_MODIFIED_TIME,
(0) hoadabfl: 7, hoadamod: 0
(0) row 10 - hoadambl: 0, hoadadty: 0, hoadaprc: 0, hoadacst: 0
(0) row 10 - hoadascl: 0, hoadanul: 0, hoadanml: 13, hoadanam: WH_ADDED_DATE,
(0) hoadabfl: 0, hoadamod: 0
(0) hoadscr(16); Exited with retcode = 0.
Note, the query I entered doesn't appear and I never entered the query "select * from bio_assay" - it appears that this is
automatically generated by the hsodbc process and raises other questions (like wouldn't this return a lot of unneeded
data ?). It also appears that the "select * from bio_assay" gets translated somehow into a select statement listing each column - however, non of the columns listed are character type columns like assay_name.
Does this make sense to anyone? Any ideas ? HELP !Remote view gives the same error. I think the problem has to do with nchar and nvchar fields. It seems that the hsodbc agent issues a "select * from bio_assay" at the beginning of the session (see above trace).
0) odbc_rec: select * from "BIO_ASSAY"
(0) Silent DB Function!!
(0) nvOUT (P:\Src\QP\QPT2SEXE.C 929):
(0) SELECT "T0000"."WH_ADDED_DATE" AS c00010, "T0000"."ASSAY_MODIFIED_TIME" AS c0009, "T0000"."ASSAY_CREATED_TIME" AS c0008, "T0000"."ASSAY_DATE_COMPLETED" AS c0007, "T0000"."ASSAY_DATE_PLANNED" AS c0006, "T0000"."ASSAY_DATE_STARTED" AS c0005, "T0000"."ASSAY_STATUS_NO" AS c0004, "T0000"."TIMEFRAME_KEY" AS c0003, "T0000"."TARGET_KEY" AS c0002, "T0000"."ENVIRONMENT_KEY" AS c0001, "T0000"."ASSAY_KEY" AS c0000 FROM "BIO_ASSAY" T0000
Apparently, the list of fields that is returned from the "select *" does not include any of the nchar or nvchar type columns. After this initial "select *" the oracle server only looks at the initial list of columns and gives an "invalid column" error for any fields that are not in this initial list. So the question is: how do I make the hsodbc agent see the nchar/nvchar type fields and include them in the initial list ? I've tried setting the HS_NLS_LANGUAGE and HS_NLS_NCHAR parameters but these seem to have no effect.
Any clue as to what's going on ? -
Can we use formula column in lexical parameter in sql query ...
hi
can we use formula column in lexical parameter in sql query ...
as example
i want to give
select * from & c_table
forumula
function c_table
if :p_sort = 1 then
return 'dept'
else
return 'emp'
end;
c_table formula column
is this possible ...
i have such example in oracle apps reports
if i try in ordinary report usinf emp table it show error ..
how we can give formula column...
please help me in this regard...
Edited by: 797525 on Feb 20, 2012 9:31 PMthanks sir,
iam not exactly saying select * from &c_table but some thing that like columns in select stmt also will be populated in user_parameters ,there are lot of table select.......from mtl_demand md, mtl_system_items msi, mtl_txn_source_types mtst, mtl_item_locations loc &C_source_from &C_from_cat
&c_source_from and &c_from_cat formula column and there are defined at report level only ......
pl/sql code &c_source_from is
function C_source_fromFormula return VARCHAR2 is
begin
if :P_source_type_id = 2 then return(',MTL_SALES_ORDERS mkts');
else if :P_source_type_id = 3 then return(',GL_CODE_COMBINATIONS gl');
else if :P_source_type_id = 6 then return(',MTL_GENERIC_DISPOSITIONS mdsp');
else if :P_source_type_id = 5 then
if :C_source_where is null then
return NULL;
else
return(',WIP_ENTITIES wip');
end if;
else if :P_source_type_id = 8 then return(',MTL_SALES_ORDERS mkts');
else if :P_source_type_id is null then
return(',MTL_SALES_ORDERS mkts,
MTL_GENERIC_DISPOSITIONS mdsp,
GL_CODE_COMBINATIONS gl ');
else null;
end if; end if; end if; end if; end if; end if;
RETURN NULL; end;
this is forumula column i hope that you understand what iam saying
please help me in this regard....
thanking you... -
How do I add more than one column to a table using SQL?
Hi
I need to add 3 columns to a table using SQL
the syntax
"ALTER TABLE TEST ADD COLUMN newcol1 float";
works fine - for adding one coumn only.
For multiple columns I tried various permutations along the lines of
"ALTER TABLE TEST ADD (COLUMN newcol01 float, COLUMN new2 float,COLUMN new3 float)";
"ALTER TABLE TIPSTEST ADD COLUMN new1 float"
"ALTER TABLE TIPSTEST ADD COLUMN new2 float"
"ALTER TABLE TIPSTEST ADD COLUMN new3 float"
etc., but this doesn't work.
From a web search it sounds like SQL can only add one column at a time.
I have a workaround : create intermediate temporary tables , copying data and adding
one column at each stage. It seems a fairly awkward way of programming though.
Am I missing something simple : is there a way to add multiple columns in one go?
ThanksOK : solved an underlying problem with this one myself
for the code
String createString;
createString = "select COFFEES.* INTO NEWCOFFEES FROM COFFEES"; // example
Statement stmt;
try {
stmt = a_Globals.database1Connection.createStatement();
stmt.executeUpdate(createString);
stmt.close();
a_Globals.database1Connection.close();
} catch(SQLException ex) {
System.err.println("SQLException: " + ex.getMessage());
} commenting out the line:
a_Globals.database1Connection.close();
Allowed the subsequent SQL statement(s) to work OK. Looks like this was the cause of several
difficulties, preventing me doing several SQL instructions in turn.
Thanks for the responses.
Mike2z -
I have an application made in devlopment which is working fine and i jsut migrated it to production but when i am running one of the page in the app in production it si throwing this error "ORA-20001: Error fetching column value: ORA-06502: PL/SQL: numeric or value error: character string buffer too small"... this report is ment for generating report.
Now what i have done, i compared both dev and prod environment but i have not found and changes except this one. In the page of both the application in dev and prod under shared component under under template the region of breadcrum and report region is showing in different position. i dont think it a problem because of that i am facing problem.
If anybody have idea how could i recitfy the prbs i will be highly thankful to you
Regards
Adifriends i have seen where the error is coming but i am unable to trace out how to increase the size of lov which i have made.
when i am taking display as select list(named lov) it is throwing me the error "ORA-20001: Error fetching column value: ORA-06502: PL/SQL: numeric or value error: character string buffer too small" but if i am taking display as "popup lov(named lov)" under tablular form element under one of the column in the report, it is working properly. but not shwoing the report the way we want it to show. For that reason i want to increase the size of the love which i have made. -
I have tried intializing an array and replacing elements by specifying a particular row, and column, but in the end I get an array with only one element replaced, and I suspect that it is because as the for loops are running through their iterations each time the array is re-initializing. I have a simple vi that I will post below, it is not the exact situation that I have but is a good place for me to get some understanding. I have the row and column indexes being driven by the inner and outer loop iterations, which gives me the pattern I need. I am using the inner iterations as array elements. How do I set this up so that it works and d
oes keep re-initializing my array.
Attachments:
Untitled.vi 26 KBI have fixed a number of things in your vi.
You were right in thinking that the array was continuously re-initialized. To avoid this, use a shift register (right-click the loop border), which will pass the updated array into the next iteration.
Chilly Charly (aka CC)
E-List Master - Kudos glutton - Press the yellow button on the left...
Attachments:
your_vi.vi.zip 13 KB
Maybe you are looking for
-
Add all files in the path while creating folio file in Folio builder
Hello everyone. I am using InDesign CS 5 and creating folio for iPad 2. My Folio builder was working fine till last week, but suddenly i see a change the way it behaves. When I update the files in Folio builder, it adds all the files in the path (not
-
Dynamic text box generation in jsp page by using net-ui jsp html tags
Hi All, I Need to generate the "TextBoxes" Dynamically by using the "Net-UI HTML Tags".How can i do this ? I am using 1. WebLogic portal server 8.1 sp4 (Workshop dev environment) 2. JavaPageFlow Applications 3. Net-UI tags html jsp I need to generate
-
Upgrading license for more context cisco asa 5580
Hi guys: This is the situation I got to firewalls with failover and I need to upgrade the license so I can get more context (right now I have 5 context and I need 10) so I was looking at the procedure and I'm not sure If I need to restart the device
-
HT5787 Need to help take back account icloud was stolen by hacker
Dear all, I have 2 phone which one is Iphone 4s and another one is Iphone 5s(buy new on Aprile-2014, worldwide version buy at stor apple at Vietnam). When I sign in my account on Iphone 5s both of my Icloud on 2 phone alert incorect password. I confo
-
Hi, I want to buy an Itouch, but I have a couple questions: 1) I currently have a Nano 2g and Itunes, so I'm wondering if I'll be able to have two devices hooked up to itunes or if that will be a problem. 2) I have the wall charger for the Nano 2g...