OR with case in SQL?
I have asked to do a report, Icase ph.action_taken
When "V".
then... {the expression complex}
What I want is to say if ph.action_taken is T, V or Z - F
then make the expression complex without having to put in the complex expression
4 times. How to use an RC with case in SQL?
Thank you
Use a different approach to the CASE and the IN operator. Like this:
with t as (select 'A' a from dual)
select case
when t.a in ('A','B','C') then 'OK'
else 'Not OK'
end b
from t
Tags: Oracle Development
Similar Questions
-
BlackBerry Smartphones BlackBerry Mini keyboard with case Convertible UK
Anyoine know when the official BlackBerry Mini keyboard with case Convertible, will be available to buy online UK or even Amazon UK?
Thanks for any help.
Sorted
-
Where isi poijnter to the correct JDK 8 in my case for sql developer 4.1?
Where isi poijnter to the correct JDK 8 in my case for sql developer 4.1? Have several JDK on this pc, 7 8, somewhere, there is a pointer
for the right to use when installing sql developer 4.1 JDK.
Who did. Really appreciate it.
Need to expose this region better. Other positive results will continue in the same question.
Especially if they do not take explicit measures to expose the hidden files and folders.
Thanks again
-
Please give me help with case #0185011655
Please give me help with case #0185011655
This is a user to user, not the Adobe support forum
Adobe contact information - http://helpx.adobe.com/contact.html
-
Remote debugging with Apex and SQL Developer
Hello
I try to turn on remote debugging with Apex and SQL Developer.
I can debug the PL/SQL procedure when it is called from SQL * PLUS, but when I call the procedure from Apex 'Process', the debugger does not stop at breakpoints.
I checked that the procedure is called Apex process as I can see 'things' happening in the procedure but the debugger does not stop at breakpoints. The program being debugged (session Apex) manages to fix the SQL Developer debug listener.
Apex (OnSubmit) process
---------------------------
BEGIN
DBMS_DEBUG_JDWP. CONNECT_TCP ('10.176.20.225', 4000);
DONOTHING;
DBMS_DEBUG_JDWP. DISCONNECT;
END;
Procedure
-------------------------------------
CREATE OR REPLACE
PROCEDURE DONOTHING ACE
testvar VARCHAR2 (100);
BEGIN
update cross-set test_data = 'I came here 11111'; -It is run
commit;
testvar: = "aaa"; -bREAK POINT IS HERE
DONOTHING END;
/
Thanks in advance,
Paresh
Published by: pyadav1 on November 19, 2008 15:19Hello
Sorry... seems I was too hasty in reading your question...
You also gave * DEBUG ON [Parsingschema]. [procediurename] * APEX_PUBLIC_USER (or ANONYMOUS or HTMLDB_PUBLIC_USER). Otherwise, the behavior is exactly the same as you have described...
The privilege of the DEBUGGING SESSION to CONNECT need to given to the schema analysis but the APEX_PUBLIC_USER schema needs debug privilege on the function or procedure...
Does that help?
Carsten-
-
Optimize SQL with case-when-other
Hello
try to categorize DateValue into 3 groups
1. effective: current month
2. for a YEAR: between January and last month of the current year
3. for a YEAR: between January and last month of the last year
I have a feeling that my SQL could be much shorter and faster. I would be grateful for professional advice...
-case when TO_NUMBER ((TO_CHAR (DOCUMENT_TIMESTAMP, 'YYYY') |)) To_char (DOCUMENT_TIMESTAMP, 'MM'))) = TO_NUMBER (TO_CHAR (sysdate, 'YYYY') |) To_char (sysdate, 'MM'))
can 'real '.
-FOR A YEAR
When TO_NUMBER ((TO_CHAR (DOCUMENT_TIMESTAMP, 'YYYY') |)) To_char (DOCUMENT_TIMESTAMP, 'MM'))) between TO_NUMBER (TO_CHAR (sysdate, 'YYYY') |) (' 01') and TO_NUMBER (TO_CHAR (sysdate, 'YYYY') |) To_char (sysdate, 'MM'))-1
then "CDA".
-PYTD
When TO_NUMBER ((TO_CHAR (DOCUMENT_TIMESTAMP, 'YYYY') |)) To_char (DOCUMENT_TIMESTAMP, 'MM'))) between TO_NUMBER (TO_CHAR(sysdate, 'YYYY')-1). ' 01' and TO_NUMBER (TO_CHAR(sysdate, 'YYYY')-1 |) To_char (sysdate, 'MM'))-1
then "PYTD".
else "Others" end up as ABCHello
I find trunc to be more readable:
SQL> WITH DATA AS ( 2 SELECT SYSDATE d FROM dual UNION ALL 3 SELECT add_months(SYSDATE, -12) FROM dual UNION ALL 4 SELECT DATE '2009-01-01' FROM dual 5 ) 6 SELECT to_char(d, 'dd-mon-yyyy') "Date", 7 CASE 8 WHEN trunc(d, 'month') = trunc(SYSDATE, 'month') THEN 9 'Actual' 10 WHEN trunc(d, 'year') = trunc(SYSDATE, 'year') AND d < sysdate THEN 11 'YTD' 12 WHEN trunc(d, 'year') = add_months(trunc(SYSDATE, 'year'), -12) THEN 13 'PYTD' 14 END "Case" 15 FROM DATA 16 ; Date Case ----------------- ------ 10-jun-2009 Actual 10-jun-2008 PYTD 01-jan-2009 YTD
Kind regards
--
VincentPublished by: user11163377 on June 10, 2009 02:12 - corrected the CDA column
-
Need help with ics. SQL return null
Hi experts WCS.
I have this ics. SQL statement that returns an IList as null and nothing in the errStr in debugging print.
IList rsATypes is ics. SQL (, sqlATypes, listName, limit, bCache errStr);
The code is in one of my jsp. He ran very well in my local JSK (HyperSQL Db), but returns NULL in the case of Test (Oracle DB, if this is another).
I got the sql statement println during execution and run it directly in Oracle DB (same instance) it returns the expected result set.
The code snippet:
System.out.println("## ics.GetSSVar(\"pubid\") : " + ics.GetSSVar("pubid")); // Get Attribute Types String sqlATypes = "SELECT DISTINCT assetpublication.assettype " + "FROM assetpublication " + "LEFT JOIN approvedassets " + " ON assetpublication.assetid = approvedassets.assetid " + "WHERE pubid = '" + ics.GetSSVar("pubid") + "' " + "AND (tstate is null OR tstate <> 'A') " + "AND (voided is null OR voided <> 'T') " + "ORDER BY assettype; "; System.out.println("##0126 sqlATypes : " + sqlATypes); String from = "AssetPublication, ApprovedAssets"; // String listName = null; String listName = "ATypesList"; int limit = -1; // boolean bCache = true; boolean bCache = false; StringBuffer errStr = new StringBuffer(""); ics.ClearErrno(); IList rsATypes = ics.SQL(from, sqlATypes, listName, limit, bCache, errStr); System.out.println("## rsATypes : " + rsATypes); if (rsATypes == null) { System.out.println("## NO DATA in rsATypes! errStr : " + errStr.toString());
}
The journal:
## ics.GetSSVar("pubid") : 1374097570685 ## sqlATypes : SELECT DISTINCT assetpublication.assettype FROM assetpublication LEFT JOIN approvedassets ON assetpublication.assetid = approvedassets.assetid WHERE pubid = '1374097570685' AND (tstate is null OR tstate <> 'A') AND (voided is null OR voided <> 'T') ORDER BY assettype; ## rsATypes : null ## NO DATA in rsATypes! errStr :
I got enclosing try catch block, who did not take any exception.
The funny thing is, in the same piece of code, an ics. Casea used already worked (which I noticed outside because there was not enough for what I want to do):
StringBuffer errSB = new StringBuffer(""); ics.SetVar("assetid", id); IList approvedAsset = ics.SelectTo("ApprovedAssets", "state,voided,tstate,locked,reason,treason", "assetid", null, -1, null, true, errSB);
Any help/ideas from anyone would be really appreciated.
Thanks Guddu1223, I discovered why.
The SQL statement cannot end with a semicolon (see line 11 of my original above codes). Delete who had back all the records provided for in my resultset in the IList.
The reason why it works in my local, but not stable instance that I guess is my local JSK + HyperSQL, in WCS + Oracle DB instance trying...
-
performance issue with the Oracle SQL query
Dears
Good evening
I am new to begin to use Oracle SQL, I have a sql query which takes longer to run in production.
Each table in the query contains 1.2 million records and DBA suggested using the "Oracle - tips. I don't have good knowledge on this subject and the difficulties to implement this advice for imrpovise performance. In the product the jobs Informatica are failed and stuck with this problem of query performance.
I ask this forum for an emergency for me to solve this problem by using "advice". kindly help me.
SELECT
CASE.ID,
CASE. DTYPE,
CASE. Version
CASE. EXTERNAL_REF,
CASE. CREATION_TS,
RQ. TYPE
Of
PAS_CASE CASE,
AS_REQUEST RQ,
CN PAS_CONTEXT
where rq.case_id = case.id
AND rq.id = cn.request_id
and rq. DTYPE = "MAINREQUEST."
and rq. TYPE in
(
'bgc.dar.vap.resolution.advice ',' bgc.dar.e2etest.execution ',' bgc.tbf.repair.vap', ' bgc.dar.e2etest ',.
'bgc.dar.e2etest.intermediate.execution ',' bgc.cbm ',' bgc.dar.e2etest.preparation', ' bgc.chc.polling '.)
and CN. STATUS ('FINISHED', 'CANCEL', 'TIMEOUT', 'ERROR')
AND CAST (CN. CREATION_TS AS DATE) > = TO_DATE ('2014-05-06 00:00:00 ',' ' YYYY-MM-DD HH24:MI:SS)
AND
CAST (CN. CREATION_TS AS DATE) < TO_DATE ('2014-05-06 23:59:59 ',' ' YYYY-MM-DD HH24:MI:SS)-2nd request
SELECT
RA.ID,
RHEUMATOID ARTHRITIS. Version
RHEUMATOID ARTHRITIS. REQUEST_ID,
RA.NAME,
RHEUMATOID ARTHRITIS. VALUE,
RHEUMATOID ARTHRITIS. LOB_ID,
RHEUMATOID ARTHRITIS. DTYPE,
RHEUMATOID ARTHRITIS. CREATION_TS,
TASK. MAIN_REQ_TYPE
PAS_REQUESTATTRIBUTE RA
Join
(
Select tsk.ID, tsk. TYPE, main_req_type main_req.
of tsk PAS_REQUEST
Join
(
Select cn.id as context_id, rq. TYPE main_req_type
of PAS_REQUEST rq
Cn PAS_CONTEXT
where rq.id = cn.request_id
and rq. DTYPE = "MAINREQUEST."
and rq. TYPE in
(
'bgc.dar.vap.resolution.advice ',' bgc.dar.e2etest.execution ',' bgc.tbf.repair.vap', ' bgc.dar.e2etest ',.
'bgc.dar.e2etest.intermediate.execution ',' bgc.cbm ',' bgc.dar.e2etest.preparation', ' bgc.chc.polling '.
)
and cn. STATUS ('FINISHED', 'CANCEL', 'TIMEOUT', 'ERROR')
and CAST (cn. END_TS AS DATE) > = TO_DATE ('2014-05-06 00:00:00 ',' ' YYYY-MM-DD HH24:MI:SS)
and CAST (cn. END_TS AS DATE) < = TO_DATE ('2014-05-06 23:59:59 ',' ' YYYY-MM-DD HH24:MI:SS)
and cn.ID between the 20141999999999999 AND 20141800000000000
and rq.ID between the 20141999999999999 AND 20141800000000000) main_req
On tsk.parent_context_id = main_req.context_id
and tsk. DTYPE in ('ANALYSIS_TASK', 'DECISION_TASK')
and tsk.ID between $$ LOW_ID1 AND $$ HIGH_ID1
) task
on the RA REQUEST_ID = task.ID
and RA.ID between $$ LOW_ID1 AND $$ HIGH_ID1
UNIONSELECT
RA.ID,
RHEUMATOID ARTHRITIS. Version
RHEUMATOID ARTHRITIS. REQUEST_ID,
RA.NAME,
RHEUMATOID ARTHRITIS. VALUE,
RHEUMATOID ARTHRITIS. LOB_ID,
RHEUMATOID ARTHRITIS. DTYPE,
RHEUMATOID ARTHRITIS. CREATION_TS,
MAIN_REQ. TYPE
PAS_REQUESTATTRIBUTE RA
Join
(
Select rq.id, rq.type
of PAS_REQUEST rq
Cn PAS_CONTEXT
where rq.id = cn.request_id
and rq. DTYPE = "MAINREQUEST."
and rq. TYPE in
(
'bgc.dar.vap.resolution.advice ',' bgc.dar.e2etest.execution ',' bgc.tbf.repair.vap', ' bgc.dar.e2etest ',.
'bgc.dar.e2etest.intermediate.execution ',' bgc.cbm ',' bgc.dar.e2etest.preparation', ' bgc.chc.polling '.
)
and cn. STATUS ('FINISHED', 'CANCEL', 'TIMEOUT', 'ERROR')
and CAST (cn. END_TS AS DATE) > = TO_DATE ('2014-05-06 00:00:00 ',' ' YYYY-MM-DD HH24:MI:SS)
and CAST (cn. END_TS AS DATE) < = TO_DATE ('2014-05-06 23:59:59 ',' ' YYYY-MM-DD HH24:MI:SS)
and cn.ID between the 20141999999999999 AND 20141800000000000
and rq.ID between the 20141999999999999 AND 20141800000000000
) main_req
on the RA REQUEST_ID = main_req.ID-3rd request
SELECT
RB.ID,
RB. DTYPE,
RB. Version
RB. TYPE,
RB. CREATION_TS,
RB. TASK_ID,
RB. Color
RB. GLOBAL_RESULT,
TASK. MAIN_REQ_TYPE
Of
PAS_RESULTBLOCK RB
Join
(
Select tsk.ID, tsk. TYPE, main_req_type main_req.
of tsk PAS_REQUEST
Join
(
Select cn.id as context_id, rq. TYPE main_req_type
of PAS_REQUEST rq
Cn PAS_CONTEXT
where rq.id = cn.request_id
and rq. DTYPE = "MAINREQUEST."
and rq. TYPE in
(
'bgc.dar.vap.resolution.advice ',' bgc.dar.e2etest.execution ',' bgc.tbf.repair.vap', ' bgc.dar.e2etest ',.
'bgc.dar.e2etest.intermediate.execution ',' bgc.cbm ',' bgc.dar.e2etest.preparation', ' bgc.chc.polling '.
)
and cn. STATUS ('FINISHED', 'CANCEL', 'TIMEOUT', 'ERROR')
and CAST (cn. END_TS AS DATE) > = TO_DATE ('2014-05-06 00:00:00 ',' ' YYYY-MM-DD HH24:MI:SS)
and CAST (cn. END_TS AS DATE) < = TO_DATE ('2014-05-06 23:59:59 ',' ' YYYY-MM-DD HH24:MI:SS)
and cn.ID between the 20141999999999999 AND 20141800000000000
and rq.ID between the 20141999999999999 AND 20141800000000000
) main_req
On tsk.parent_context_id = main_req.context_id
and tsk. DTYPE in ('ANALYSIS_TASK', 'DECISION_TASK')
and tsk.ID between $$ LOW_ID1 AND $$ HIGH_ID1
) task
We rb.task_id = task.ID
and rb.ID between $$ LOW_ID1 AND $$ HIGH_ID1
and RB. TYPE is not null
and RB. TYPE IN
(
'bgc.dar.vap.resolution.advice ',' bgc.dar.e2etest.execution ',' bgc.tbf.repair.vap', ' bgc.dar.e2etest ',.
'bgc.dar.e2etest.intermediate.execution ',' bgc.cbm ',' bgc.dar.e2etest.preparation', ' bgc.chc.polling '.
)
UNION
SELECT
RB.ID,
RB. DTYPE,
RB. Version
RB. TYPE,
RB. CREATION_TS,
RB. TASK_ID,
RB. Color
RB. GLOBAL_RESULT,
TASK. MAIN_REQ_TYPE
Of
PAS_RESULTBLOCK RB
Join
(
Select tsk.ID, tsk. TYPE, main_req_type main_req.
of tsk PAS_REQUEST
Join
(
Select cn.id as context_id, rq. TYPE main_req_type
of PAS_REQUEST rq
Cn PAS_CONTEXT
where rq.id = cn.request_id
and rq. DTYPE = "MAINREQUEST."
and rq. TYPE in
(
'bgc.dar.vap.resolution.advice ',' bgc.dar.e2etest.execution ',' bgc.tbf.repair.vap', ' bgc.dar.e2etest ',.
'bgc.dar.e2etest.intermediate.execution ',' bgc.cbm ',' bgc.dar.e2etest.preparation', ' bgc.chc.polling '.
)
and cn. STATUS ('FINISHED', 'CANCEL', 'TIMEOUT', 'ERROR')
and CAST (cn. END_TS AS DATE) > = TO_DATE ('2014-05-06 00:00:00 ',' ' YYYY-MM-DD HH24:MI:SS)
and CAST (cn. END_TS AS DATE) < = TO_DATE ('2014-05-06 23:59:59 ',' ' YYYY-MM-DD HH24:MI:SS)
and cn.ID between the 20141999999999999 AND 20141800000000000
and rq.ID between the 20141999999999999 AND 20141800000000000
) main_req
On tsk.parent_context_id = main_req.context_id
and tsk. DTYPE in ('ANALYSIS_TASK', 'DECISION_TASK')
and tsk.ID between $$ LOW_ID1 AND $$ HIGH_ID1
) task
We rb.task_id = task.ID
and rb.ID between $$ LOW_ID1 AND $$ HIGH_ID1
and RB. TYPE is nullSELECT
RB.ID,
RB. DTYPE,
RB. Version
RB. TYPE,
RB. CREATION_TS,
RB. TASK_ID,
RB. Color
RB. GLOBAL_RESULT,
TASK. MAIN_REQ_TYPE
Of
PAS_RESULTBLOCK RB
Join
(
Select tsk.ID, tsk. TYPE, main_req_type main_req.
of tsk PAS_REQUEST
Join
(
Select cn.id as context_id, rq. TYPE main_req_type
of PAS_REQUEST rq
Cn PAS_CONTEXT
where rq.id = cn.request_id
and rq. DTYPE = "MAINREQUEST."
and rq. TYPE in
(
'bgc.dar.vap.resolution.advice ',' bgc.dar.e2etest.execution ',' bgc.tbf.repair.vap', ' bgc.dar.e2etest ',.
'bgc.dar.e2etest.intermediate.execution ',' bgc.cbm ',' bgc.dar.e2etest.preparation', ' bgc.chc.polling '.
)
and cn. STATUS ('FINISHED', 'CANCEL', 'TIMEOUT', 'ERROR')
and CAST (cn. END_TS AS DATE) > = TO_DATE ('2014-05-06 00:00:00 ',' ' YYYY-MM-DD HH24:MI:SS)
and CAST (cn. END_TS AS DATE) < = TO_DATE ('2014-05-06 23:59:59 ',' ' YYYY-MM-DD HH24:MI:SS)
and cn.ID between the 20141999999999999 AND 20141800000000000
and rq.ID between the 20141999999999999 AND 20141800000000000
) main_req
On tsk.parent_context_id = main_req.context_id
and tsk. DTYPE in ('ANALYSIS_TASK', 'DECISION_TASK')
and tsk.ID between $$ LOW_ID1 AND $$ HIGH_ID1
) task
We rb.task_id = task.ID
and rb.ID between $$ LOW_ID1 AND $$ HIGH_ID1
and RB. TYPE is not null
and RB. TYPE IN
(
'bgc.dar.vap.resolution.advice ',' bgc.dar.e2etest.execution ',' bgc.tbf.repair.vap', ' bgc.dar.e2etest ',.
'bgc.dar.e2etest.intermediate.execution ',' bgc.cbm ',' bgc.dar.e2etest.preparation', ' bgc.chc.polling '.
)
UNION
SELECT
RB.ID,
RB. DTYPE,
RB. Version
RB. TYPE,
RB. CREATION_TS,
RB. TASK_ID,
RB. Color
RB. GLOBAL_RESULT,
TASK. MAIN_REQ_TYPE
Of
PAS_RESULTBLOCK RB
Join
(
Select tsk.ID, tsk. TYPE, main_req_type main_req.
of tsk PAS_REQUEST
Join
(
Select cn.id as context_id, rq. TYPE main_req_type
of PAS_REQUEST rq
Cn PAS_CONTEXT
where rq.id = cn.request_id
and rq. DTYPE = "MAINREQUEST."
and rq. TYPE in
(
'bgc.dar.vap.resolution.advice ',' bgc.dar.e2etest.execution ',' bgc.tbf.repair.vap', ' bgc.dar.e2etest ',.
'bgc.dar.e2etest.intermediate.execution ',' bgc.cbm ',' bgc.dar.e2etest.preparation', ' bgc.chc.polling '.
)
and cn. STATUS ('FINISHED', 'CANCEL', 'TIMEOUT', 'ERROR')
and CAST (cn. END_TS AS DATE) > = TO_DATE ('2014-05-06 00:00:00 ',' ' YYYY-MM-DD HH24:MI:SS)
and CAST (cn. END_TS AS DATE) < = TO_DATE ('2014-05-06 23:59:59 ',' ' YYYY-MM-DD HH24:MI:SS)
and cn.ID between the 20141999999999999 AND 20141800000000000
and rq.ID between the 20141999999999999 AND 20141800000000000
) main_req
On tsk.parent_context_id = main_req.context_id
and tsk. DTYPE in ('ANALYSIS_TASK', 'DECISION_TASK')
and tsk.ID between $$ LOW_ID1 AND $$ HIGH_ID1
) task
We rb.task_id = task.ID
and rb.ID between $$ LOW_ID1 AND $$ HIGH_ID1
and RB. TYPE is null
-4th query
SELECT
RI.ID,
UII DTYPE,
UII Version
UII RESULTBLOCK_ID,
RI.NAME,
UII VALUE,
UII UNIT,
UII Color
UII LOB_ID,
UII CREATION_TS,
UII SEQUENCE,
UII DETAILLEVEL,
RES_BLK. MAIN_REQ_TYPE
Of
RI PAS_RESULTITEM
Join
(
Select
rb.ID, rb. TYPE rb_type, task. TYPE as the task_type, task. pas_resultblock rb main_req_type
Join
(
Select tsk.ID, tsk. TYPE, main_req_type main_req.
of tsk PAS_REQUEST
Join
(
Select cn.id as context_id, rq. TYPE main_req_type
of PAS_REQUEST rq
Cn PAS_CONTEXT
where rq.id = cn.request_id
and rq. DTYPE = "MAINREQUEST."
and rq. TYPE in
(
'bgc.dar.vap.resolution.advice ',' bgc.dar.e2etest.execution ',' bgc.tbf.repair.vap', ' bgc.dar.e2etest ',.
'bgc.dar.e2etest.intermediate.execution ',' bgc.cbm ',' bgc.dar.e2etest.preparation', ' bgc.chc.polling '.
)
and cn. STATUS ('FINISHED', 'CANCEL', 'TIMEOUT', 'ERROR')
and CAST (cn. END_TS AS DATE) > = TO_DATE ('2014-05-06 00:00:00 ',' ' YYYY-MM-DD HH24:MI:SS)
and CAST (cn. END_TS AS DATE) < = TO_DATE ('2014-05-06 23:59:59 ',' ' YYYY-MM-DD HH24:MI:SS)
and cn.ID between the 20141999999999999 AND 20141800000000000
and rq.ID between the 20141999999999999 AND 20141800000000000
) main_req
On tsk.parent_context_id = main_req.context_id
and tsk. DTYPE in ('ANALYSIS_TASK', 'DECISION_TASK')
and tsk.ID between the 20141999999999999 AND 20141800000000000
) task
We rb.task_id = task.ID
and rb.ID between the 20141999999999999 AND 20141800000000000
and RB. TYPE IN
(
'bgc.dar.vap.resolution.advice ',' bgc.dar.e2etest.execution ',' bgc.tbf.repair.vap', ' bgc.dar.e2etest ',.
'bgc.dar.e2etest.intermediate.execution ',' bgc.cbm ',' bgc.dar.e2etest.preparation', ' bgc.chc.polling '.
)
) res_blk
On ri.resultblock_id = res_blk.ID
where IN RI.NAME
(
'bgc.dar.vap.resolution.advice ',' bgc.dar.e2etest.execution ',' bgc.tbf.repair.vap', ' bgc.dar.e2etest ',.
'bgc.dar.e2etest.intermediate.execution ',' bgc.cbm ',' bgc.dar.e2etest.preparation', ' bgc.chc.polling '.
)
and RI.ID between the 20141999999999999 AND 20141800000000000
and RI.NAME is not null
UNIONSelect
RI.ID,
UII DTYPE,
UII Version
UII RESULTBLOCK_ID,
RI.NAME,
UII VALUE,
UII UNIT,
UII Color
UII LOB_ID,
UII CREATION_TS,
UII SEQUENCE,
UII DETAILLEVEL,
RES_BLK. MAIN_REQ_TYPE
of pas_resultitem ri
Join
(
Select
rb.ID, rb. TYPE rb_type, task. TYPE as the task_type, task. pas_resultblock rb main_req_type
Join
(
Select tsk.ID, tsk. TYPE, main_req_type main_req.
of tsk PAS_REQUEST
Join
(
Select cn.id as context_id, rq. TYPE main_req_type
of PAS_REQUEST rq
Cn PAS_CONTEXT
where rq.id = cn.request_id
and rq. DTYPE = "MAINREQUEST."
and rq. TYPE in
(
'bgc.dar.vap.resolution.advice ',' bgc.dar.e2etest.execution ',' bgc.tbf.repair.vap', ' bgc.dar.e2etest ',.
'bgc.dar.e2etest.intermediate.execution ',' bgc.cbm ',' bgc.dar.e2etest.preparation', ' bgc.chc.polling '.
)
and cn. STATUS ('FINISHED', 'CANCEL', 'TIMEOUT', 'ERROR')
and CAST (cn. END_TS AS DATE) > = TO_DATE ('2014-05-06 00:00:00 ',' ' YYYY-MM-DD HH24:MI:SS)
and CAST (cn. END_TS AS DATE) < = TO_DATE ('2014-05-06 23:59:59 ',' ' YYYY-MM-DD HH24:MI:SS)
and cn.ID between the 20141999999999999 AND 20141800000000000
and rq.ID between the 20141999999999999 AND 20141800000000000
) main_req
On tsk.parent_context_id = main_req.context_id
and tsk. DTYPE in ('ANALYSIS_TASK', 'DECISION_TASK')
and tsk.ID between the 20141999999999999 AND 20141800000000000
) task
We rb.task_id = task.ID
and rb.ID between the 20141999999999999 AND 20141800000000000
) res_blk
On ri.resultblock_id = res_blk.ID
where RI.ID between 20141800000000000 20141999999999999 AND
and RI.NAME is null-REQUEST OF 5HT
SELECT
TSK.ID,
TSK. Version
TSK. DTYPE,
TSK. CASE_ID,
TSK. TYPE,
TSK. CORRELATION_ID,
TSK. INITIATOR,
TSK. EXECUTOR,
TSK. CATEGORY,
TSK. PARENT_CONTEXT_ID,
TSK. CREATION_TS,
MAIN_REQ. MAIN_REQ_TYPE
Of
TSK PAS_REQUEST
Join
(
Select cn.id as context_id, rq. TYPE main_req_type
of PAS_REQUEST rq
Cn PAS_CONTEXT
where rq.id = cn.request_id
and rq. DTYPE = "MAINREQUEST."
and rq. TYPE in
(
'bgc.dar.vap.resolution.advice ',' bgc.dar.e2etest.execution ',' bgc.tbf.repair.vap', ' bgc.dar.e2etest ',.
'bgc.dar.e2etest.intermediate.execution ',' bgc.cbm ',' bgc.dar.e2etest.preparation', ' bgc.chc.polling '.
)
and cn. STATUS ('FINISHED', 'CANCEL', 'TIMEOUT', 'ERROR')
and CAST (cn. END_TS AS DATE) > = TO_DATE ('2014-05-06 00:00:00 ',' ' YYYY-MM-DD HH24:MI:SS)
and CAST (cn. END_TS AS DATE) < = TO_DATE ('2014-05-06 23:59:59 ',' ' YYYY-MM-DD HH24:MI:SS)
and cn.ID between the 20141999999999999 AND 20141800000000000
and rq.ID between the 20141999999999999 AND 20141800000000000
) main_req
On tsk.parent_context_id = main_req.context_id
and tsk. DTYPE in ('ANALYSIS_TASK', 'DECISION_TASK')
and tsk.ID between $$ LOW_ID1 AND $$ HIGH_ID1
UNION
Select
MREQ.ID,
MREQ. Version
MREQ. DTYPE,
MREQ. CASE_ID,
MREQ. TYPE,
MREQ. CORRELATION_ID,
MREQ. INITIATOR,
MREQ. EXECUTOR,
MREQ. CATEGORY,
MREQ. PARENT_CONTEXT_ID,
MREQ. CREATION_TS,
MREQ. TYPE
of PAS_REQUEST mreq
Cn PAS_CONTEXT
where mreq.id = cn.request_id
and mreq. DTYPE = "MAINREQUEST."
and mreq. TYPE in
(
'bgc.dar.vap.resolution.advice ',' bgc.dar.e2etest.execution ',' bgc.tbf.repair.vap', ' bgc.dar.e2etest ',.
'bgc.dar.e2etest.intermediate.execution ',' bgc.cbm ',' bgc.dar.e2etest.preparation', ' bgc.chc.polling '.
)
and cn. STATUS ('FINISHED', 'CANCEL', 'TIMEOUT', 'ERROR')
and CAST (cn. END_TS AS DATE) > = TO_DATE ('2014-05-06 00:00:00 ',' ' YYYY-MM-DD HH24:MI:SS)
and CAST (cn. END_TS AS DATE) < = TO_DATE ('2014-05-06 23:59:59 ',' ' YYYY-MM-DD HH24:MI:SS)
and cn.ID between the 20141999999999999 AND 20141800000000000
and mreq.ID between the 20141999999999999 AND 20141800000000000
Tips will be may not be necessary (proportional to the cardinalities need)
Select pc.id, pc.dtype, pc.version, pc.external_ref, pc.creation_ts, rq.type
from pas_case
as_request rq,
CN pas_context
where rq.case_id = pc.id
and rq.id = cn.request_id
and rq.dtype = 'MAINREQUEST. '
and rq.type in ('bgc.dar.vap.resolution.advice ',' bgc.dar.e2etest.execution', ' bgc.tbf.repair.vap',
'bgc.dar.e2etest ',' bgc.dar.e2etest.intermediate.execution', ' bgc.cbm ',.
'bgc.dar.e2etest.preparation ','bgc.chc.polling '.
)
and cn.status in ('FINISHED', 'CANCEL', 'TIMEOUT', 'ERROR')
and cn.creation_ts > = to_timestamp ('2014-05-06 00:00:00 ',' yyyy-mm-dd hh24:mi:ss')
and cn.creation_ts<= to_timestamp('2014-05-06="" 23:59:59.999999','yyyy-mm-dd="">=>
-2nd request
with
main_request as
(select / * + materialize * /)
CN.ID as context_id, rq.type as main_req_type
of pas_request rq
Join
CN pas_context
On rq.id = cn.request_id
and rq.dtype = 'MAINREQUEST. '
and rq.type in ('bgc.dar.vap.resolution.advice ',' bgc.dar.e2etest.execution', ' bgc.chc.polling',
'bgc.tbf.repair.vap ',' bgc.dar.e2etest', ' bgc.dar.e2etest.intermediate.execution ',.
'bgc.cbm ','bgc.dar.e2etest.preparation '.
)
and cn.status in ('FINISHED', 'CANCEL', 'TIMEOUT', 'ERROR')
and cn.end_ts > = to_timestamp ('2014-05-06 00:00:00 ',' yyyy-mm-dd hh24:mi:ss')
and cn.end_ts<= to_timestamp('2014-05-06="" 23:59:59.999999','yyyy-mm-dd="">=>
and cn.id between 20141800000000000 and 20141999999999999
and rq.id between 20141800000000000 and 20141999999999999
)
Select ra.id, ra.version, ra.request_id, ra.name, ra.value, ra.lob_id, ra.dtype, ra.creation_ts, task.main_req_type
of pas_requestattribute ra
Join
(select tsk.id, tsk.type, main_req.main_req_type
from pas_request tsk
Join
main_request main_req
On tsk.parent_context_id = main_req.context_id
and tsk.dtype in ('ANALYSIS_TASK', 'DECISION_TASK')
and tsk.id between $$ low_id1 and $$ high_id1
) task
We ra.request_id = task.id
and ra.id between $$ low_id1 and $$ high_id1
Union
Select ra.id, ra.version, ra.request_id, ra.name, ra.value, ra.lob_id, ra.dtype, ra.creation_ts, main_req.type
of pas_requestattribute ra
Join
main_request main_req
On ra.request_id = main_req.context_id
-3rd request
Select rb.id, rb.dtype, rb.version, rb.type, rb.creation_ts, rb.task_id, rb.color, rb.global_result, task.main_req_type
of pas_resultblock rb
Join
(select tsk.id, tsk.type, main_req.main_req_type
from pas_request tsk
Join
(select cn.id as context_id, rq.type as main_req_type
of pas_request rq
Join
CN pas_context
On rq.id = cn.request_id
and rq.dtype = 'MAINREQUEST. '
and rq.type in ('bgc.dar.vap.resolution.advice ','bgc.dar.e2etest.execution ',
'bgc.tbf.repair.vap ','bgc.dar.e2etest ',.
'bgc.dar.e2etest.intermediate.execution ','bgc.cbm ',.
'bgc.dar.e2etest.preparation ','bgc.chc.polling '.
)
and cn.status in ('FINISHED', 'CANCEL', 'TIMEOUT', 'ERROR')
and cn.end_ts > = to_timestamp ('2014-05-06 00:00:00 ',' yyyy-mm-dd hh24:mi:ss')
and cn.end_ts<= to_timestamp('2014-05-06="" 23:59:59.999999','yyyy-mm-dd="">=>
and cn.id between 20141800000000000 and 20141999999999999
and rq.id between 20141800000000000 and 20141999999999999
) main_req
On tsk.parent_context_id = main_req.context_id
and tsk.dtype in ('ANALYSIS_TASK', 'DECISION_TASK')
and tsk.id between $$ low_id1 and $$ high_id1
) task
We rb.task_id = task.id
and rb.id between $$ low_id1 and $$ high_id1
where the type is null
or (type is not null
type in ('bgc.dar.vap.resolution.advice ',' bgc.dar.e2etest.execution ', ' bgc.tbf.repair.vap',
'bgc.dar.e2etest ',' bgc.dar.e2etest.intermediate.execution', ' bgc.cbm ',.
'bgc.dar.e2etest.preparation ','bgc.chc.polling '.
)
)
-4th query
Select ri.id, ri.dtype, ri.version, ri.resultblock_id, ri.name, ri.value, ri.unit, ri.color, ri.lob_id.
RI.creation_ts, RI. Sequence, RI. DetailLevel, res_blk.main_req_type
of pas_resultitem ri
Join
(select rb.id, rb.type as rb_type, task.type as task_type, task.main_req_type)
of pas_resultblock rb
Join
(select main_req_type, tsk.id, tsk.type, main_req.)
from pas_request tsk
Join
(select cn.id as context_id, rq.type as main_req_type
of pas_request rq
Join
CN pas_context
On rq.id = cn.request_id
and rq.dtype = 'MAINREQUEST. '
and rq.type in ('bgc.dar.vap.resolution.advice ','bgc.dar.e2etest.execution ',
'bgc.tbf.repair.vap ','bgc.dar.e2etest ',.
'bgc.dar.e2etest.intermediate.execution ','bgc.cbm ',.
'bgc.dar.e2etest.preparation ','bgc.chc.polling '.
)
and cn.status in ('FINISHED', 'CANCEL', 'TIMEOUT', 'ERROR')
and cn.end_ts > = to_timestamp ('2014-05-06 00:00:00 ',' yyyy-mm-dd hh24:mi:ss')
and cn.end_ts<= to_timestamp('2014-05-06="" 23:59:59.999999','yyyy-mm-dd="">=>
and cn.id between 20141800000000000 and 20141999999999999
and rq.id between 20141800000000000 and 20141999999999999
) main_req
On tsk.parent_context_id = main_req.context_id
and tsk.dtype in ('ANALYSIS_TASK', 'DECISION_TASK')
and tsk.id between 20141800000000000 and 20141999999999999
) task
We rb.task_id = task.id
and rb.id between 20141800000000000 and 20141999999999999
and rb.type in ('bgc.dar.vap.resolution.advice ',' bgc.dar.e2etest.execution', ' bgc.tbf.repair.vap',
'bgc.dar.e2etest ',' bgc.dar.e2etest.intermediate.execution', ' bgc.cbm ',.
'bgc.dar.e2etest.preparation ','bgc.chc.polling '.
)
) res_blk
On ri.resultblock_id = res_blk.id
and ri.id between 20141800000000000 and 20141999999999999
where ri.name is null
or (ri.name is not null
and ri.name in ('bgc.dar.vap.resolution.advice ',' bgc.dar.e2etest.execution', ' bgc.tbf.repair.vap',
'bgc.dar.e2etest ',' bgc.dar.e2etest.intermediate.execution', ' bgc.cbm ',.
'bgc.dar.e2etest.preparation ','bgc.chc.polling '.
)
)
-5th application
with
main_request as
(select / * + materialize * / )
mreq.ID, mreq.version, mreq.dtype, mreq.case_id, mreq.type, mreq.correlation_id, mreq. Initiator, mreq. Executor,
mreq. Category, mreq.parent_context_id, mreq.creation_ts, mreq.type
of pas_request mreq
Join
CN pas_context
On mreq.id = cn.request_id
and mreq.dtype = 'MAINREQUEST. '
and mreq.type in ('bgc.dar.vap.resolution.advice ',' bgc.dar.e2etest.execution', ' bgc.tbf.repair.vap',
'bgc.dar.e2etest ',' bgc.dar.e2etest.intermediate.execution', ' bgc.cbm ',.
'bgc.dar.e2etest.preparation ','bgc.chc.polling '.
)
and cn.status in ('FINISHED', 'CANCEL', 'TIMEOUT', 'ERROR')
and cn.end_ts > = to_timestamp ('2014-05-06 00:00:00 ',' yyyy-mm-dd hh24:mi:ss')
and cn.end_ts<= to_timestamp('2014-05-06="" 23:59:59.999999','yyyy-mm-dd="">=>
and cn.id between 20141800000000000 and 20141999999999999
and mreq.id between 20141800000000000 and 20141999999999999
)
Select tsk.id, tsk.version, tsk.dtype, tsk.case_id, tsk.type, tsk.correlation_id, tsk.initiator, tsk.executor,
TSK. Category, tsk.parent_context_id, tsk.creation_ts, main_req.main_req_type
from pas_request tsk
Join
main_request main_req
On tsk.parent_context_id = main_req.id
and tsk.dtype in ('ANALYSIS_TASK', 'DECISION_TASK')
and tsk.id between $$ low_id1 and $$ high_id1
Union
SELECT id, version, dtype, case_id, type, correlation_id, initiator, executor,
category, type parent_context_id, creation_ts
of main_request
Concerning
Etbin
-
Help with anonymus pl/sql layout using javascript
Hi people.
I want to display records on a region (using apex 4.2), this anonymous pl/sql script below shows 3 records in database, but the layout only shows me the first album with its data, the other 2 files, only show me the labels.
I checked this same query creating a report and it shows the 3 files correctly.
I guess I'm doing something wrong with this javascript routine or certainly miss something,
in this link you can see the layout I get. (http://sdrv.ms/Xrv0J8).
Another is the little help I need to display in a line for each record. in fact, I'm getting a line for each label and a line for each data record. I have read and learned something is/div, but I don't know how to change it to get the desired results, any suggestion is welcome.
Thanks in advance for any help.
I am completely new in apex and java script, but I have several years of experience in pl/sql.
-------
The Script:
Begin
Declare
Anyth cursor is
Select the item,
To_char (delivery, ' month DD, YYYY hh24:mi:ss ") delivery.
Current_date
Of pending_items;
Begin
For a loop Anyth
Begin
Sys.Htp.P ("< script type =" text/javascript"> '");
Sys.Htp.P ('function cdtd() {'});
Sys.Htp.P ("var Christmas = new Date (" ' | ') ") a.Delivery | '")');
Sys.Htp.P ("var now = new Date();'");
Sys.Htp.P ("var timeDiff = xmas.getTime () - now.getTime ();'");
Sys.Htp.P (' if (timeDiff < = 0) {'});
Sys.Htp.P ('clearTimeout() (timer)');
-Sys.Htp.P ("document.write ("of the text here.")");
Sys.Htp.P (' / / execute all necessary code to the completion of the countdown here ');
Sys.Htp.P ('} ');
Sys.Htp.P (' var seconds = Math.floor(timeDiff / 1000);) ") ;
Sys.Htp.P ("var minutes = Math.floor(seconds / 60) ;");
Sys.Htp.P (' varhour = Math.floor(minutes / 60);) ") ;
Sys.Htp.P ("days var Math.floor(hours / 24) = ;"); ")
Sys.Htp.P (' hours = 24 ;'); %)
Sys.Htp.P (' minutes % = 60 ;');)
Sys.Htp.P (' seconds % = 60 ;');)
Sys.Htp.P (' document.getElementById("daysBox").innerHTML = days ;');)
Sys.Htp.P (' document.getElementById("hoursBox").innerHTML = hours;) ") ;
Sys.Htp.P (' document.getElementById("minsBox").innerHTML = minutes ;');)
Sys.Htp.P (' ;'); seconds = document.getElementById("secsBox").innerHTML)
Sys.Htp.P (' timer var = setTimeout ("cdtd ()", 1000);');
Sys.Htp.P ('} ');
Sys.Htp.P ("< /script >");
Sys.Htp.P ("days");
Sys.Htp.P ("< div id ="daysBox"> < / div > '");
Sys.Htp.P ("hours");
Sys.Htp.P ("< div id ="hoursBox"> < / div > '");
Sys.Htp.P ('minute');
Sys.Htp.P ("< div id ="minsBox"> < / div > '");
Sys.Htp.P ("seconds");
Sys.Htp.P ("< div id ="secsBox"> < / div > '");
Sys.Htp.P ("< script type =" text/javascript"> '");
Sys.Htp.P ('cdtd() < /script > ');
End;
End loop;
End;
End;For now, let's focus on delivery dates and the javascript.
Why you would put your javascript in htp.p called in a plsql region is beyond me. When you edit the page there is a region of javascript where you can put global variables and functions, a great spot for it then and much easier to manage than that.
Now, it is also clear that your query on pending items will return multiple records. Thus, using a report would serve you well in this case. However, using code like this:document.getElementById("daysBox").innerHTML = days; document.getElementById("hoursBox").innerHTML = hours; document.getElementById("minsBox").innerHTML = minutes; document.getElementById("secsBox").innerHTML = seconds;
you won't have to. getElementById is supposed to return an element identified by a code. If you have a report that contains multiple lines and elements on each line with the same ID, you're doing something wrong. You should be the date of delivery by rank, and I suppose that you put your code with htp.p because you don't know how to deal with this and passing the procedure of javascript.
But would it not more oppurtune for you simply create a report with a sql source when you calculate each part of the date and then refresh this region with a certain interval. If you would be refreshed every 5 minutes, not who is more fast enough to keep track of things? Remember, refreshing a region will execute the SQL again.
It is not that you cannot make a report multi-record with a countdown by rank, but are you sufficiently comfortable with javascript and jquery to encode and maintain that against leverage plsql and dynamic actions (there is even an action timer plugin supplied by oracle dynamic)? -
Problem with case when try to alter the query from siimple
Hello PL/SQL gurus and Experts.
I'm stuck with a question (can be simple), but not gettings all headsway.
value returns is as - 1.46select 365/day_num_yr Anul_Fact from Date where date_dt = trunc(sysdate -1)
need to write it in the form of case (I have to multiply it to some other outer query), I want to store variable ina and then use the same in an outside -.
but when use the following syntax, then it always returns 0 and not the same output returned by the query above without the scabbard.
Help kindly, I appericate your time and effort in advance.select (case when date_dt =trunc(sysdate -1) then 365/day_num_yr else 0 END) Anul_Fact
user555994 wrote:
Problem is that I do not get the output as 1.46, even the output is coming like the 0 only if using the query - nextselect /*date_dt, sysdate - 1 prev_dt, trunc(sysdate - 1) trunc_prev_dt,*/ case when date_dt = trunc(sysdate -1) then 365/day_num_yr else 0 end num_day from date_dim;
Completely, which seems to be a question of DATA. Have you checked if the table contains data for DATE_DT = SYSDATE - 1? Can you check if the data stored do not have hours and Minutes stored?
Although I have provided examples of data, which is the same as the data in my main table and once I used the previous solution you provided and then also gives the result as same as those mentioned by you.
I think it's something like -
select date_dt, sysdate - 1 prev_dt, trunc(sysdate - 1) trunc_prev_dt, case when date_dt = trunc(sysdate -1) then 366/day_num_yr where day_num_yr=(select day_num_yr from date_dim where date_dt = trunc(sysdate -1)) else 0 end num_day from date_dim;
Once we get the day_num_yr then he deviding by 366/day_num_yr :(
but he does not like throwing an error ORA-95 - missing keywordYes, it does not work
-case when date_dt = trunc (sysdate-1) then 366/day_num_yr where day_num_yr = (select day_num_yr from the date_dim where date_dt = trunc (sysdate-1))
due to a syntax of alien.
I don't think that you really need. I already said, with the data in your Table, you will be having only * 1 * record with a Non - zero value. Thus, simply apply a filter to extract the corresponding record SYSDATE - 1 and you should get an output which is Non-zero. If you apply a where predicate, then would not need you a CASE statement. You can directly use something like below:select date_dt, sysdate - 1 prev_dt, trunc(sysdate - 1) trunc_prev_dt, 365 / day_num_yr num_day from t4 where date_dt = trunc(sysdate - 1);
Published by: Jen K, September 7, 2012 16:00
-
my table: workingdate
SNO name startdate
1 ss 12/01/2011
2 bb 11/01/2011
I can update name or date start or two .i will pass a new date, name of update through front end.
I need to validate the condition in the event, that is when the new date after check if it is higher, then start date. If it is higher, then it should be updated with the new start date.
If not, it must be updated, it will be the old value.
I use it under request
Update workingdate set name = 'sss', startdate =)
case
When
(TO_DATE('2011-12-10','yyyy-MM-dd') > (select TO_DATE(startdate,'yyyy-MM-dd') from the workingdate, when sno = 1))
then TO_DATE('2011-12-10','yyyy-MM-dd')
on the other
Select TO_DATE(start_date,'yyyy-MM-dd') in the workingdate, when sno = 1
end
)
where sno = 1;
but when I run the above query, it shows me
Error report:
SQL error: ORA-00936: lack of expression
00936 00000 - "missing expression.
* Cause:
* Action:
How could I solve this problem...Check this
UPDATE workingdate SET NAME='sss', startdate=(CASE WHEN (TO_DATE('2011-12-10','yyyy-MM-dd') > startdate THEN TO_DATE('2011-12-10','yyyy-MM-dd') ELSE start_date END) WHERE sno=1;
See you soon
Kanchana -
What is the problem with the instruction box below. I have error when running. Can someone help me please. Thank you.
SELECT CRR.ROUTE, CRR.PUBLICATION FROM CIRC.CARRIER_ROUTE CRR, CIRC_RPT.VW_CARRIER_RATE_DRW VCRD WHERE CRR.PUBLICATION=VCRD.METHOD_PUB AND CRR.RATE_CODE=VCRD.RATE_CODE AND (case when CRR.ROUTE IN('40011420','40012428') then VCRD.RATE_METHOD ='SBSTD' else VCRD.RATE_METHOD ='SCSTD' END)
Varun says:
What is the problem with the instruction box below. I have error when running. Can someone help me please. Thank you.SELECT CRR.ROUTE, CRR.PUBLICATION FROM CIRC.CARRIER_ROUTE CRR, CIRC_RPT.VW_CARRIER_RATE_DRW VCRD WHERE CRR.PUBLICATION=VCRD.METHOD_PUB AND CRR.RATE_CODE=VCRD.RATE_CODE AND (case when CRR.ROUTE IN('40011420','40012428') then VCRD.RATE_METHOD ='SBSTD' else VCRD.RATE_METHOD ='SCSTD' END)
How can we help if we do not know the error?
BTW, I find that a bit of discipline on alignment of code allows the readability
SELECT CRR.ROUTE, CRR.PUBLICATION FROM CIRC.CARRIER_ROUTE CRR, CIRC_RPT.VW_CARRIER_RATE_DRW VCRD WHERE CRR.PUBLICATION=VCRD.METHOD_PUB AND CRR.RATE_CODE=VCRD.RATE_CODE AND (case when CRR.ROUTE IN('40011420', '40012428') then VCRD.RATE_METHOD ='SBSTD' else VCRD.RATE_METHOD ='SCSTD' END)
And now that I've lined it up, it sticks out... shouldn't the look of the CASE statement like this:
AND (case when CRR.ROUTE IN('40011420', '40012428') then 'SBSTD' else 'SCSTD' END)
My personal rule is that each item in a list
-the column names in a SELECT statement
-a from the table names
-the conditions in a WHERE clause)
is listed on a separate line and aligned with the other elements in the list.But humans read your code don't care SQL.
-
Since some time ago, I asked a question in this forum on an unusual problem of join and subtract ( subtract the total periods of highest level duration ). I had what seemed like a work request. So far, I could not really use it. Now that I'm looking closer results, I think that there is something wrong with it, but I can't understand why it's happening.
Using the definition of the table of the original question, the following simple query shows a special extract of the data I'm looking at.
Select duration, event_type, start_time, code_range, request_id from MYTABLE where REQUEST_ID = 'abc '.
This translates into the following lines (separate columns by ' / '):
START_TIME/REQUEST_ID/EVENT_TYPE/CODE_RANGE/DURATION
2010-11-12 01:42:04.0/abc/Junk/publicEntryPoint/2,003
2010-11-12 01:42:04.0/abc/Junk/webServiceCall/947
2010-11-12 01:42:04.0/abc/Junk/webServiceCall/969
Another similar request with REQUEST_ID = 'def' means:
START_TIME/REQUEST_ID/EVENT_TYPE/CODE_RANGE/DURATION
2010-11-12 00:22:13.0/def/junk/webServiceCall/788
2010-11-12 00:22:13.0/def/junk/webServiceCall/1,128
2010-11-12 00:22:13.0/def/junk/publicEntryPoint/2,003
What follows is an excerpt simplified query I have a problem with:
Select value start_time request_id event_type, code_range, duration, case code_range
When "publicEntryPoint" then length * 2 - sum (duration) over (partition by request_id)
of another-1
end inner_duration from MYTABLE where EVENT_TYPE = 'spam' and trunc (START_TIME) = to_date('2010-11-12','yyyy-mm-dd')
and rownum < 1000;
Notice the couple of unconventional functions used here, the ' case/when' and 'sum() over (partition).
This property returns a bunch of lines (count: 999), but here are the two with the particular REQUEST_ID values:
START_TIME/REQUEST_ID/EVENT_TYPE/CODE_RANGE/DURATION/INNER_DURATION
2010-11-12 01:42:04.0/abc/junk/publicEntryPoint/2,003/2,003
2010-11-12 00:22:13.0/def/junk/publicEntryPoint/2,003/87
The second line is correct. The first line has an unexpected value of INNER_DURATION of 2003. It should be 87 as the second row. I don't understand why this is happening.I think that 'and rownum '.<1000" must="" be="" the="" problem.="" it="" must="" be="" excluding="" some="" of="" the="" rows="" needed="" for="" the="" sum.="" the="" analytic="" function="" will="" be="" applied="" after="" this="" condition--see="" the="" sql="">1000">
Analytical functions are the last set of operations performed in a query, except for the
final ORDER BY clause. Every joint and every WHERE, GROUP BY and HAVING clauses are
completed before the analytical functions are processedHave you tried the query without this condition?
Kind regards
Bob -
Using Oracle 10 g R2, plsql in SQL Developer (or TOAD). I have a question 'simple' with the criteria 'complicated' in where clause.
So, it's something like this:
Select the fields in a table
where stuff like Upper(:CategoryId) | '%'
and sub_category_id like Upper(:SubCategory). '%'
and order_date > =: StartDate
and order_date < =: EndDate
and division_id =: Division
Up to this point, the query works fine. Here is where is the problem:
If there is a value in the following parameter field, it works very well, but it is possible that the parameter is null, then I have to test for this first, and if it is empty (or even assigned a 'false' value) then it must restore all settings. The following parameter field is titled: SKU. The reason why I do this first place is to spend several values in a field of single parameter - comma which is great as long as there is some values...
(This works with the above)
and INSTR (Upper(:SKU), table.sku) > 0
And I have a similar problem with another field in the table entitled: catalogue and as: SKU, it works very well if there is at least one input value.
What I tried (who doesn't) is therefore:
and as table.sku (BOX WHEN: SKU = '1' AND '%')
Of OTHER INSTR (Upper(:SKU), table.sku) > 0
END CASE)
Same thing with the catalog:
and as table.catalog (BOX WHEN: catalog = '1' AND '%')
Of OTHER INSTR (Upper(:Catalog), table.catalog) > 0
There must be a way to make this work. I will be grateful for any suggestions that would help in my situation.What is
select s.sku, s.std_cost_ea, s.unit_price, o.QUANTITY, o.order_no, o.order_line from f21.ffct_offer_product_sku s inner join f21.fmkt_order_detail o on s.sku = o.sku and s.company_id = o.company_id and s.division_id = o.division_id and s.offer_id = o.offer_id and s.offer_year = o.offer_year where s.category_id like Upper(:CategoryId) || '%' and s.sub_category_id like Upper(:SubCategory) || '%' and instr(Upper(nvl(:SKU,s.sku)), s.sku) > 0 and instr(Upper(nvl(:Offer,s.offer_id), s.offer_id) > 0 and o.order_date >= :StartDate and o.order_date <= :EndDate and s.division_id = :Division and s.version_no = 0
-
"Search" Firefox Ctrl-F function always starts with "Case-sensitive" automatically activated
"Search" Firefox Ctrl-F always begin with 'Match case' activated automatically every time I start up the browser, even when I start with safe mode disabled modules. Is there a way to have case-sensitive have (without having to check it manually) when I type ctrl-F?
dcode147 said
"Search" Firefox Ctrl-F always begin with 'Match case' activated automatically every time I start up the browser, even when I start with safe mode disabled modules. Is there a way to have case-sensitive have (without having to check it manually) when I type ctrl-F?
If you don't have a user.js file, as I did not, then you can find this information in your profile folder prefs.js. To find this folder, click menu triple horizontal slash on Firefox button, then click the question mark at the bottom, then click "Troubleshooting information" and then click on "View file" next to the profile folder. At this point, you need to open the js file (prefs.js to me, maybe user.js for others) with Notepad.
The entry "accessibility.typeaheadfind.casesensitive" cor - el mentioned above must be just off the top, and if "Match case" is highlighted then it should have a '1' beside him. You will need to close Firefox, then change 1 to 0 and save. When you restart Firefox "Case-sensitive" must return to being disabled.
Maybe you are looking for
-
How can I change the bookmarks in Firefox 6?
I'm in Firefox 5 & 6 times and I can not understand how to change the bookmarks. What is the secret? Thank you!
-
I can't install OS (Windows 8)
Hi all! I have a laptop dv6922et HP with core 2 duo t8100, 2 GB of Ram. What I want to do is to install an operating system. I wish to have Windows 8 on it, because this run ok and Xp is outdate *. I have a bootable USB stick with windows 8.Recently,
-
Lenovo ThinkPad P50 MXM?
I was wondering if the GPU is MXM for future reference, because I do I.E. work and sometimes for me, the GPU is broken. And if a or b if possible. New to the Forum and get the P50 soon. I had one years ago, beloved, so when I looking for laptops good
-
Need to file "dpgmkb.dll" for Wireless Desktop 2000
Original title: dpgmkb.dll I need this file for my 'Wireless Desktop 2000'. Any help would be appreciated.
-
Failure of the system to Vista Home
I accepted a download of the sytem on 10.8.09 updates crashed my system giving an error message! Oxc 0190036! 2745/93173 (regsvc.dll). -What this means and how can I restore my system?