Query with row_number=1
Can any one please tell me whats wrong with the following query:
SELECT number_of_days
- (TRUNC ((number_of_days - first_weekend) / 7) + 1)
- (TRUNC ((number_of_days - first_weekend - 1) / 7) + 1) weekdays,
ROW_NUMBER () OVER (ORDER BY month_end) r
FROM (SELECT EXTRACT (DAY FROM NEXT_DAY (TRUNC (input_date, 'MM'),
'SATURDAY'
) first_weekend,
LAST_DAY (input_date) month_end,
EXTRACT (DAY FROM LAST_DAY (input_date)) number_of_days
FROM (SELECT TO_DATE (date_read, 'YYYY-MM-DD') input_date
FROM its_sensor_15min))
WHERE r = 1Thanks
PS: I'm getting "r invalid identifier" error
Edited by: thinkingeye on Jul 30, 2010 1:39 PM
Thanks all
But when i used my initial query its giving me an error again
SELECT TO_CHAR (TRUNC (date_read, 'mm'),
'MON-YYYY',
'nls_date_language=english'
) month_year,
(select weekdays,r
from(
SELECT number_of_days
- (TRUNC ((number_of_days - first_weekend) / 7) + 1)
- (TRUNC ((number_of_days - first_weekend - 1) / 7) + 1) weekdays,
ROW_NUMBER () OVER (ORDER BY month_end) r
FROM (SELECT EXTRACT (DAY FROM NEXT_DAY (TRUNC (input_date, 'MM'),
'SATURDAY'
) first_weekend,
LAST_DAY (input_date) month_end,
EXTRACT (DAY FROM LAST_DAY (input_date)) number_of_days
FROM (SELECT TO_DATE (date_read, 'YYYY-MM-DD') input_date
FROM its_sensor_15min)))where r=1 ,
COUNT (CASE
WHEN speed_avg <= 45
AND speed_avg != 0
AND vol_sum != 0
AND lane_type = 'm'
AND (hour_read || qtrhr_read) IN
('61', '62', '63', '64', '71', '72', '73', '74',
'81', '82', '83', '84', '153', '154', '161', '162',
'163', '164', '171', '172', '173', '174', '181',
'182')
THEN 1
END
) count_rows_less_than_45,
( COUNT (CASE
WHEN speed_avg <= 45
AND speed_avg != 0
AND vol_sum != 0
AND lane_type = 'm'
AND (hour_read || qtrhr_read) IN
('61', '62', '63', '64', '71', '72', '73', '74',
'81', '82', '83', '84', '153', '154', '161',
'162', '163', '164', '171', '172', '173', '174',
'181', '182')
THEN 1
END
/ COUNT (DISTINCT asset_id || direction)
/ 24
) count_ratio,
COUNT (DISTINCT asset_id || direction)
FROM its_sensor_15min
WHERE TO_CHAR (date_read, 'fmday') NOT IN ('saturday', 'sunday')
GROUP BY TRUNC (date_read, 'mm')
Similar Messages
-
Is that important column order in a query with row_number function
Hi folks,
I am using Oracle 11g R2 on HP-UX machine.
I have 2 types of query with row_number and I think they are same but output of each of them are different. I changed only column order in query2.
Query 1 :
(SELECT
"LOOKUP_INPUT_SUBQUERY"."CONTRACT_SK" "CONTRACT_SK",
"LOOKUP_INPUT_SUBQUERY"."SIMCARD_SK" "SIMCARD_SK"
FROM (
SELECT row_number ()
OVER (
PARTITION BY "R_CON_SUBS_SIMCARD_LK".
"CONTRACT_SK"
ORDER BY
"R_CON_SUBS_SIMCARD_LK"."START_DATE" DESC,
"R_CON_SUBS_SIMCARD_LK"."SEQ_NUM" DESC NULLS LAST) /* EXPRESSION_3.OUTGRP1.SIRA */
"SIRA",
"R_CON_SUBS_SIMCARD_LK"."CONTRACT_SK" "CONTRACT_SK",
"R_CON_SUBS_SIMCARD_LK"."SIMCARD_SK" "SIMCARD_SK"
FROM "SRC_OZRDS"."R_CON_SUBS_SIMCARD_LK" "R_CON_SUBS_SIMCARD_LK")
"LOOKUP_INPUT_SUBQUERY"
WHERE ("LOOKUP_INPUT_SUBQUERY"."SIRA" = 1))
Output of this like that :
CONTRACT_SK SIMCARD_SK
1 1
1 3
1 4
1 5
1 6
1 11
1 12
1 14
1 15
1 16
Query 2 :
(SELECT
"LOOKUP_INPUT_SUBQUERY"."CONTRACT_SK" "CONTRACT_SK",
"LOOKUP_INPUT_SUBQUERY"."SIMCARD_SK" "SIMCARD_SK"
FROM (
SELECT
"R_CON_SUBS_SIMCARD_LK"."CONTRACT_SK" "CONTRACT_SK",
"R_CON_SUBS_SIMCARD_LK"."SIMCARD_SK" "SIMCARD_SK",
row_number ()
OVER (
PARTITION BY "R_CON_SUBS_SIMCARD_LK".
"CONTRACT_SK"
ORDER BY
"R_CON_SUBS_SIMCARD_LK"."START_DATE" DESC,
"R_CON_SUBS_SIMCARD_LK"."SEQ_NUM" DESC NULLS LAST) /* EXPRESSION_3.OUTGRP1.SIRA */
"SIRA"
FROM "SRC_OZRDS"."R_CON_SUBS_SIMCARD_LK" "R_CON_SUBS_SIMCARD_LK")
"LOOKUP_INPUT_SUBQUERY"
WHERE ("LOOKUP_INPUT_SUBQUERY"."SIRA" = 1))
Output of this like that:
2 874812
7 70097256
8 18734091
9 158024
10 815397739
13 22657919
19 83177779
20 82579529
22 5829949
23 35348926
25 3865978
I expected the second output, because there are lots of contract sk but there is one contract_sk in first query result. i did not get the point. What is the problem ?user8649469 wrote:
I changed only column order in query2.So what else do you expect? If you order, for example, by last name, fist name don't you think rows will be returned in a different order (and therefore same row will have different row number) than ordering by first name, last name?
SY. -
I am linking my question from Stack Overflow here. The link: http://stackoverflow.com/questions/27943913/sql-azure-query-with-row-number-executes-slow-if-columns-with-nvarchar-of-bi
Appreciate your help!
GorgiHi,
Thanks for posting here.
I suggest you to check this link and optimize your query on sql azure.
http://www.sqlusa.com/articles/query-optimization/
http://sqlblog.com/blogs/paul_white/archive/2011/02/23/Advanced-TSQL-Tuning-Why-Internals-Knowledge-Matters.aspx
Also check this blog which had similar issue.
https://social.msdn.microsoft.com/Forums/en-US/c1da08b4-265d-4ec8-a252-8d7090234e3e/simple-select-query-takes-long-time-to-execute-with-nvarchar-columns?forum=transactsql
Girish Prajwal -
Need help in optimizing the query with joins and group by clause
I am having problem in executing the query below.. it is taking lot of time. To simplify, I have added the two tables FILE_STATUS = stores the file load details and COMM table that is actual business commission table showing records successfully processed and which records were transmitted to other system. Records with status = T is trasnmitted to other system and traansactions with P is pending.
CREATE TABLE FILE_STATUS
(FILE_ID VARCHAR2(14),
FILE_NAME VARCHAR2(20),
CARR_CD VARCHAR2(5),
TOT_REC NUMBER,
TOT_SUCC NUMBER);
CREATE TABLE COMM
(SRC_FILE_ID VARCHAR2(14),
REC_ID NUMBER,
STATUS CHAR(1));
INSERT INTO FILE_STATUS VALUES ('12345678', 'CM_LIBM.TXT', 'LIBM', 5, 4);
INSERT INTO FILE_STATUS VALUES ('12345679', 'CM_HIPNT.TXT', 'HIPNT', 4, 0);
INSERT INTO COMM VALUES ('12345678', 1, 'T');
INSERT INTO COMM VALUES ('12345678', 3, 'T');
INSERT INTO COMM VALUES ('12345678', 4, 'P');
INSERT INTO COMM VALUES ('12345678', 5, 'P');
COMMIT;Here is the query that I wrote to give me the details of the file that has been loaded into the system. It reads the file status and commission table to show file name, total records loaded, total records successfully loaded to the commission table and number of records that has been finally transmitted (status=T) to other systems.
SELECT
FS.CARR_CD
,FS.FILE_NAME
,FS.FILE_ID
,FS.TOT_REC
,FS.TOT_SUCC
,NVL(C.TOT_TRANS, 0) TOT_TRANS
FROM FILE_STATUS FS
LEFT JOIN
SELECT SRC_FILE_ID, COUNT(*) TOT_TRANS
FROM COMM
WHERE STATUS = 'T'
GROUP BY SRC_FILE_ID
) C ON C.SRC_FILE_ID = FS.FILE_ID
WHERE FILE_ID = '12345678';In production this query has more joins and is taking lot of time to process.. the main culprit for me is the join on COMM table to get the count of number of transactions transmitted. Please can you give me tips to optimize this query to get results faster? Do I need to remove group and use partition or something else. Please help!I get 2 rows if I use my query with your new criteria. Did you commit the record if you are using a second connection to query? Did you remove the criteria for file_id?
select carr_cd, file_name, file_id, tot_rec, tot_succ, tot_trans
from (select fs.carr_cd,
fs.file_name,
fs.file_id,
fs.tot_rec,
fs.tot_succ,
count(case
when c.status = 'T' then
1
else
null
end) over(partition by c.src_file_id) tot_trans,
row_number() over(partition by c.src_file_id order by null) rn
from file_status fs
left join comm c
on c.src_file_id = fs.file_id
where carr_cd = 'LIBM')
where rn = 1;
CARR_CD FILE_NAME FILE_ID TOT_REC TOT_SUCC TOT_TRANS
LIBM CM_LIBM.TXT 12345678 5 4 2
LIBM CM_LIBM.TXT 12345677 10 0 0Using RANK can potentially produce multiple rows to be returned though your data may prevent this. ROW_NUMBER will always prevent duplicates. The ordering of the analytical function is irrelevant in your query if you use ROW_NUMBER. You can remove the outermost query and inspect the data returned by the inner query;
select fs.carr_cd,
fs.file_name,
fs.file_id,
fs.tot_rec,
fs.tot_succ,
count(case
when c.status = 'T' then
1
else
null
end) over(partition by c.src_file_id) tot_trans,
row_number() over(partition by c.src_file_id order by null) rn
from file_status fs
left join comm c
on c.src_file_id = fs.file_id
where carr_cd = 'LIBM';
CARR_CD FILE_NAME FILE_ID TOT_REC TOT_SUCC TOT_TRANS RN
LIBM CM_LIBM.TXT 12345678 5 4 2 1
LIBM CM_LIBM.TXT 12345678 5 4 2 2
LIBM CM_LIBM.TXT 12345678 5 4 2 3
LIBM CM_LIBM.TXT 12345678 5 4 2 4
LIBM CM_LIBM.TXT 12345677 10 0 0 1 -
Hi ,
I have created a sub query with order by on a column.( i have cutomized the IKM control append to put order by).I can see the order by condition.If i use this subquery(yellow interface) in main query(is also yellow interface) i can't see the order by condition
Subquery(Q-yellow interface):
select
PID,
START_TIME,
ACTION_TYPE_CODE
FROM
select DISTINCT
SERVICE_TRACKING_S.PID PID,
TO_TIMESTAMP(TO_CHAR(SERVICE_TRACKING_S.ACTION_TIME,'DD-MON-YY HH24:MI:SS'),'DD-MON-YY HH24:MI:SS') START_TIME,
SERVICE_TRACKING_S.ACTION_TYPE_CODE ACTION_TYPE_CODE
from KSTGDB.SERVICE_TRACKING_S SERVICE_TRACKING_S
where (1=1)
ORDER BY-----------------------------------------------
PID
,START_TIME ASC
ODI_GET_FROM
Main query(Q1--yellow interface):
select
PID,
START_TIME,
ACTION_TYPE_CODE,
RN,
RN_MAX
FROM (
select
Q.PID PID,
Q.START_TIME START_TIME,
CASE WHEN Q.START_TIME-LAG(Q.START_TIME,1,Q.START_TIME) OVER (PARTITION BY Q. PID ORDER BY Q.START_TIME)> numtodsinterval(75,'minute')
or Q.PID!=LAG(Q.PID,1,0) OVER (PARTITION BY Q.PID ORDER BY Q.START_TIME) THEN 1 ELSE Q.ACTION_TYPE_CODE END ACTION_TYPE_CODE,
ROW_NUMBER() OVER(PARTITION BY Q.PID ORDER BY Q.START_TIME) RN,
count(*) over (PARTITION BY Q.PID ORDER BY Q.START_TIME ROWS BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING )
RN_MAX
from (
select DISTINCT
SERVICE_TRACKING_S.PID PID, TO_TIMESTAMP(TO_CHAR(SERVICE_TRACKING_S.ACTION_TIME,'DD-MON-YY HH24:MI:SS'),'DD-MON-YY HH24:MI:SS') START_TIME, SERVICE_TRACKING_S.ACTION_TYPE_CODE ACTION_TYPE_CODE
from KSTGDB.SERVICE_TRACKING_S SERVICE_TRACKING_S
where (1=1)
----------------- i don't see order by here--------------------------------
) Q
where (1=1)
) ODI_GET_FROM
thanks in advance
KHi,
Add a new KM step with the SQL you want to use for the sub query and select the +"Use Current Command for Derived-Table sub-select statement"+ checkbox. This new step can be the last one of your IKM.
Basically, you can copy the select statement of the "Insert new rows" step.
Regards,
JeromeFr -
Hi,
I've this table:
COD_ID.....................DESC_COD
MT001......................PAL
MT001......................PAL
NS007......................PAL
NS007......................TRA
NM332......................RIP
NM332......................RIP
NM332......................RIP
NM332......................RIP
NB112......................RIP
VT774......................PAL
VT774......................RIP
VT774......................PAL
NT999......................PAL
............................. --other 1000 records
I'd like to write one query with this condition:
If DESC_COD = PAL I must add at the column COD_ID "-Pn" with n = 0 to 99
If DESC_COD = TRA I must add at the column COD_ID "-Tn" with n = 0 to 99
If DESC_COD = RIP I must add at the column COD_ID "-Rn" with n = 0 to 99
If DESC_COD = PAL and COD_ID has 3 same values I'll get COD_ID-P01, COD_ID-P02, COD_ID-P03
If DESC_COD = RIP and COD_ID has 5 same values I'll get COD_ID-R01, COD_ID-R02, COD_ID-R03, COD_ID-R04, COD_ID-R05
In my case I'd like this output:
COD_ID.....................DESC_COD
MT001-P01..................PAL
MT001-P02..................PAL
NS007-P01..................PAL
NS007-R01..................TRA
NM332-R01..................RIP
NM332-R02..................RIP
NM332-R03..................RIP
NM332-R04..................RIP
NB112-R01..................RIP
VT774-P01..................PAL
VT774-R01..................RIP
VT774-P02..................PAL
NT999-P01..................PAL
............................. --other 1000 records
Thank in advance!It's always good to test it ...
SQL> create table mytable (cod_id,desc_cod)
2 as
3 select 'MT001', 'PAL' from dual union all
4 select 'MT001', 'PAL' from dual union all
5 select 'NS007', 'PAL' from dual union all
6 select 'NS007', 'TRA' from dual union all
7 select 'NM332', 'RIP' from dual union all
8 select 'NM332', 'RIP' from dual union all
9 select 'NM332', 'RIP' from dual union all
10 select 'NM332', 'RIP' from dual union all
11 select 'NB112', 'RIP' from dual union all
12 select 'VT774', 'PAL' from dual union all
13 select 'VT774', 'RIP' from dual union all
14 select 'VT774', 'PAL' from dual union all
15 select 'NT999', 'PAL' from dual
16 /
Tabel is aangemaakt.
SQL> select /* Aalap Sharma */ cod_id||'-'||rn, desc_cod
2 from
3 (
4 select
5 cod_id, desc_cod,
6 row_number() over(partition by cod_id order by cod_id) rn
7 from mytable
8 )
9 /
COD_ID||'-'||RN DES
MT001-1 PAL
MT001-2 PAL
NB112-1 RIP
NM332-1 RIP
NM332-2 RIP
NM332-3 RIP
NM332-4 RIP
NS007-1 PAL
NS007-2 TRA
NT999-1 PAL
VT774-1 PAL
VT774-2 RIP
VT774-3 PAL
13 rijen zijn geselecteerd.
SQL> select cod_id || '-' || substr(desc_cod,1,1) ||
2 to_char(row_number() over (partition by cod_id,desc_cod order by null),'fm00') cod_id
3 , desc_cod
4 from mytable
5 /
COD_ID DES
MT001-P01 PAL
MT001-P02 PAL
NB112-R01 RIP
NM332-R01 RIP
NM332-R02 RIP
NM332-R03 RIP
NM332-R04 RIP
NS007-P01 PAL
NS007-T01 TRA
NT999-P01 PAL
VT774-P01 PAL
VT774-P02 PAL
VT774-R01 RIP
13 rijen zijn geselecteerd.Regards,
Rob. -
How to create an ABAP Query with OR logical expression in the select-where
Hi,
In trying to create an ABAP query with parameters. So it will select data where fields are equal to the parameters entered. The default logical expression is SELECT.. WHERE... AND.. However I want to have an OR logical expression instead of AND.. how can I attain this??
Please help me on this.. Points will be rewarded.
Thanks a lot.
Regards,
Question ManHi Bhupal, Shanthi, and Saipriya,
Thanks for your replies. But that didn't answer my question.
Bhupal,
You cannot just replace AND with OR in an ABAP QUERY. ABAP QUERY is a self generated SAP code. You'll just declare the tables, input parameters and output fields to be displayed and it will create a SAP standard code. If you'll try to change the code and replace the AND with OR in the SAP standard code, the system will require you to enter access key/object key for that particular query.
Shanthi,
Yes, that is exactly what need to have. I need to retireve DATA whenever one of the conditions was satisfied.
Saipriya,
Like what I have said, this is a standard SAP code so we can't do your suggestion.
I have already tried to insert a code in the ABAP query (there's a part there wherein you can have extra code) but that didn't work. Can anybody help me on this.
Thanks a lot.
Points will be rewarded.
Regards,
Question Man -
Error while trying to Execute the Query with Customer Exit
Hi Experts,
I am having a Query with Customer Exit, it is working fine for all the Employess, except for one. When i try to remove the Customer Exit it is working for her too. Below is the error i am getting.
system error in program SAPLLRK0 and form RSRDR; CHECK_NAV_INIT_BACK
Thanks,
Kris.Hello Kris,
Are you working with multiprovider? Please check if OSS notes 813454,840080 or 578948 are applicable in your case.
Regards,
Praveen -
Report on BEx query with 2 structures (one in rows and one in columns)
Hi, experts! I have to make Crystall report on BEx query with 2 structures, one in columns (with KF's), and one in rows. Is it possible to create such report? Because when I create such report, I cant see fields in structures, only characteristics fields.
Ok, I found samr problem in another thread. Sorry.
Edited by: Mikhail Sychev on Dec 5, 2009 9:53 PMHey Flora,
Happy to hear that its working now.
Answering your question, again its upto the connection and report format you are using. Based on your question i hope you your report output should be like this.
You cannot map to two labels for the series, again this report format is possible only in cross tab through Webi. I would suggest you to concatenate the material and month in a dimension in webi like below.
I have done the concatenation in excel level, i would suggest you to do that in webi. Try to reduce the formula as much in excel.
or
If you are using Query browser connection, then i would suggest you to create a separate report which will display the actual vs plan material wise, here you need to pass the material as a prompt.
Hope this helps in clear, please revert me for any clarification. -
Query with bind variable, how can use it in managed bean ?
Hi
I create query with bind variable (BindControlTextValue), this query return description of value that i set in BindControlTextValue variable, how can i use this query in managed bean? I need to set this value in String parameter in managed bean.
ThanksPut the query in a VO and execute it the usual way.
If you need to, you can write a parameterized method in VOImpl that executes the VO query with the parameter and then call that method from the UI (as a methodAction binding) either through the managed bean or via a direct button click on the page. -
Report query with bind variable
Trying to create a report query for xsl-fo print. For output format I pick "derive from item" then pick the item name from the list, on the next screen, I paste the query with the bind variable. on the next step test query, I always get "data not found" regardless what value I type in. This is the same query that I ran under sql commands without any issues.
Does anyone run into the same issue as I have when attempted to create a query with bind var ? There is no problem creating a query without bind varibles. . thanks.
MunsharHi, please did you get any solution to this issue? I am having similar challenge right now.
select EMP.DEPTNO as DEPTNO,
DEPT.DNAME as DNAME,
EMP.EMPNO as EMPNO,
EMP.ENAME as ENAME,
EMP.JOB as JOB,
EMP.MGR as MGR,
EMP.HIREDATE as HIREDATE,
EMP.SAL as SAL
from SCOTT.DEPT DEPT,
SCOTT.EMP EMP
where EMP.DEPTNO=DEPT.DEPTNO
and DEPT.DNAME =upper(:dname)
This run perfectly in sql developer, toad, and even inside publisher if I login directly to publisher to create report.
Generating this same query in shared component query builder and testing it returns no data found. If I remove the last line, it works. but with the last line, it return no data found. It seems no one has been able to provide solution to this issue -
SQL query with Bind variable with slower execution plan
I have a 'normal' sql select-insert statement (not using bind variable) and it yields the following execution plan:-
Execution Plan
0 INSERT STATEMENT Optimizer=CHOOSE (Cost=7 Card=1 Bytes=148)
1 0 HASH JOIN (Cost=7 Card=1 Bytes=148)
2 1 TABLE ACCESS (BY INDEX ROWID) OF 'TABLEA' (Cost=4 Card=1 Bytes=100)
3 2 INDEX (RANGE SCAN) OF 'TABLEA_IDX_2' (NON-UNIQUE) (Cost=3 Card=1)
4 1 INDEX (FAST FULL SCAN) OF 'TABLEB_IDX_003' (NON-UNIQUE)
(Cost=2 Card=135 Bytes=6480)
Statistics
0 recursive calls
18 db block gets
15558 consistent gets
47 physical reads
9896 redo size
423 bytes sent via SQL*Net to client
1095 bytes received via SQL*Net from client
3 SQL*Net roundtrips to/from client
1 sorts (memory)
0 sorts (disk)
55 rows processed
I have the same query but instead running using bind variable (I test it with both oracle form and SQL*plus), it takes considerably longer with a different execution plan:-
Execution Plan
0 INSERT STATEMENT Optimizer=CHOOSE (Cost=407 Card=1 Bytes=148)
1 0 TABLE ACCESS (BY INDEX ROWID) OF 'TABLEA' (Cost=3 Card=1 Bytes=100)
2 1 NESTED LOOPS (Cost=407 Card=1 Bytes=148)
3 2 INDEX (FAST FULL SCAN) OF TABLEB_IDX_003' (NON-UNIQUE) (Cost=2 Card=135 Bytes=6480)
4 2 INDEX (RANGE SCAN) OF 'TABLEA_IDX_2' (NON-UNIQUE) (Cost=2 Card=1)
Statistics
0 recursive calls
12 db block gets
3003199 consistent gets
54 physical reads
9448 redo size
423 bytes sent via SQL*Net to client
1258 bytes received via SQL*Net from client
3 SQL*Net roundtrips to/from client
1 sorts (memory)
0 sorts (disk)
55 rows processed
TABLEA has around 3million record while TABLEB has 300 records. Is there anyway I can improve the speed of the sql query with bind variable? I have DBA Access to the database
Regards
IvanMany thanks for your reply.
I have run the statistic already for the both tableA and tableB as well all the indexes associated with both table (using dbms_stats, I am on 9i db ) but not the indexed columns.
for table I use:-
begin
dbms_stats.gather_table_stats(ownname=> 'IVAN', tabname=> 'TABLEA', partname=> NULL);
end;
for index I use:-
begin
dbms_stats.gather_index_stats(ownname=> 'IVAN', indname=> 'TABLEB_IDX_003', partname=> NULL);
end;
Is it possible to show me a sample of how to collect statisc for INDEX columns stats?
regards
Ivan -
Query with tables VEPVG, VBAK, VBAP AND KONV
hi all,
I have a requirement, that is Open Sale Orders which is having Special Discount. I am trying to write a Query, But KONV table is not coming into the joins. my execution plans is bellow
VEPVG --> VBAK vbak-knumv = konv-knumv and konv-kschl = Special Discount
VBAP
Please explain me, how to design the query with conditions.
Thanks & Regards,
SrinivasHi,
Have you referred this help document.
http://help.sap.com/printdocu/core/Print46c/EN/data/pdf/BCSRVQUE/BCSRVQUE.pdf
Regards - Shree -
SQL Report query with condition (multiple parameters) in apex item?
Hello all,
I have a little problem and can't find a solution.
I need to create reports based on a SQL query or I.R. Nothing hard there.
Then I need to add the WHERE clause dynamically with javascript from an Apex item.
Again not very hard. I defined an Apex item, set my query like this "SELECT * FROM MYTAB WHERE COL1 = :P1_SEARCH" and then I call the page setting the P1_SEARCH value. For instance COL1 is rowid. It works fine.
But here is my problem. Let's consider that P1_SEARCH will contain several rowids and that I don't know the number of those values,
(no I won't create a lot of items and build a query with so many OR!), I would like sotheming like "SELECT * FROM MYTAB WHERE ROWID IN (:P1_SEARCH) with something like : ROWID1,ROWID2 in P1_SEARCH.
I also tried : 'ROWID1,ROWID2' and 'ROWID1','ROWID2'
but I can't get anything else than filter error. It works with IN with one value but as soon as there are two values or more, it seems than Apex can't read the string.
How could I do that, please?
Thanks for your help.
Maxmnoscars wrote:
But here is my problem. Let's consider that P1_SEARCH will contain several rowids and that I don't know the number of those values,
(no I won't create a lot of items and build a query with so many OR!), I would like sotheming like "SELECT * FROM MYTAB WHERE ROWID IN (:P1_SEARCH) with something like : ROWID1,ROWID2 in P1_SEARCH.
I also tried : 'ROWID1,ROWID2' and 'ROWID1','ROWID2'
but I can't get anything else than filter error. It works with IN with one value but as soon as there are two values or more, it seems than Apex can't read the string.For a standard report, see +{message:id=9609120}+
For an IR—and improved security avoiding the risk of SQL Injection—use a <a href="http://download.oracle.com/docs/cd/E17556_01/doc/apirefs.40/e15519/apex_collection.htm#CACFAICJ">collection</a> containing the values in a column instead of a CSV list:
{code}
SELECT * FROM MYTAB WHERE ROWID IN (SELECT c001 FROM apex_collections WHERE collection_name = 'P1_SEARCH')
{code}
(Please close duplicate threads spawned by your original question.) -
Broadcast a BW 7.0 query with BW 3.5 broadcaster?
Hi Folks,
is there a trick that allows to broadcast a BW 7.0 query with the BW 3.5 broadcaster?
On the precal server BEX 3.5 / 7.0 is installed so in theory there shouldn't be an issue.
But in the BW 3.5 broadcaster I don't see BEX 7.0 queries as all (for html) nor BEX 7.0 workbooks.
As we don't have BI JAVA stack we don't have BW 7.0 broadcaster ...
Any ideas / workarounds / tricks?
Thanks,
AxelHi,
Pls check the links----
Issues with broadcasting 3.5 workbooks after migration to 7.1
Broadcaster not working from BEX Analyzer 7.0
Not able to broadcast query.
Regards,
Suman
Maybe you are looking for
-
Not printing...zebra printer
Hi All I am using zebra printer TLP 2844, all the fonts are feeded in the printer. I am printing a simple text.. but its not printing anything. REPORT ZTEST2 . data: x-prin(4) value 'LOCL'. data: t1(80) value 'A100,100,0,d,1,1,N,"Material Number"'.
-
The last Flash player plug-in that can run on G4 ppc computers is 10.1.102.64. On Oct 30 2012 Mozilla blocked _all_ versions of Flash below version 10.3.183.19 from running on _all_ versions of Firefox. Can this block not be lifted from ppc versions
-
Another G5 iMac won't boot past grey Apple screen!! HELP!!!
Last night I tried to put my iMac to sleep. it took about 3 times, and it finally went to sleep. Today I tried to wake it up but I got the little spinning disk, and it would not wake up. I could not restart it from the screen, so I pulled out the pow
-
for some reason when i upload my website to the web once i try to view it in safari on the the welcome page will load up somtimes. when i clip on other pages such as photos or podcasts and about me it loads a blank screen in which i need to click ref
-
BI presentation server couldn't startup
Hi, I've got the following error when starting up the BI presentation server (please see attached below), could you please let me know how to get around of this? Thanks, Oracle BI Presentation Services 10.1.3.4 (Build 080726.1900) are starting up. Ty