How to conditionally write  query ?

i have one use case -
on the basis of enter value i need to execute query .
for example
select * from employees em where em. empId=? and em.firstname=? and em.jobid=?
select * from employees em where em. empId=? and em.firstname=?
i need to the write one query which is internally used this both condition and return the records
select * from employees em where
if(em.jobid==null)
select * from employees em where em. empId=? and em.firstname=?
else
select * from employees em where em. empId=? and em.firstname=? and em.jobid=?
how could i write this problem in sql ?

Note the name of this forum is "SQL Developer *(Not for general SQL/PLSQL questions)*" - so only for issues with the SQL Developer tool. Please post these questions under the dedicated SQL And PL/SQL forum.
Regards,
K.

Similar Messages

  • How Can I write Query like this

    My Dears:
    I want to reduce some formula in my report by merge these formula in my query
    I want to know how can I wrirte a query in query
    for example
    select empno,ename,(select sal from emp ee where ee.empno=mm.empno ) from emp mm
    the previous query I know it not logic but I need the way
    my DB 10G r2
    thanks in advance

    Apart your remark nothing seems to be wrong with your query. Did you try it?
    Regards
    Etbin

  • How to write query for shuttle box

    hi
    i am creating an shuttle box on my input page and need to write a query to display the selected columns in the shuttle box..
    i have created the shuttle bottle and gave the static values in it , i can view my values but cannot understand how to give the condition which allows me to display the data
    only for selected columns ...
    Please Help

    thank you for reply..
    I am completely new to oracle apex...i think here there is a prcodure to get default values into the right side box, my question is , how do i write a query for all the items in the left side box columns when selected to right side, the data has to be displayed only for those columns...
    i am looking for syntax of the query ...
    For eg there 4 columns on the left hand side of the shuttle box
    job_id
    cluster_id
    cluster_code
    cluster_name
    and i select just job_id and cluster_id to right hand side , i need to display data associated with only these 2 columns...
    Please Help
    Edited by: user12855387 on Apr 20, 2010 11:08 AM

  • How can i write two ?DDL in one query

    how can i write two ?DDL statment in one query?

    Issuing two DDL statements requires two edxecutions. Getting around it is possible by creating a procedure that issues the two DDL statements. But they would still have to be issues one at a time, but you would only have to write one statement to invoke it.

  • How to Use MAX condition using Query Report

    Hi SAP Abap Expert,
    Can we use the MAX condition in Query Report (SQ01/SQ02) ?
    I have created one sample query using table VBRP and VBRK then i need to use max condition to get the MAX record in VBELN.
    Please Help ???

    Hi Ashishsingh,
    According to your description, you want to know how to use MAX function in SQL Server Analysis Services MDX Query, right? In this case, please refer to the link below which describe the syntax and sample of MDX function.
    http://technet.microsoft.com/en-us/library/ms145601.aspx
    http://www.mdxpert.com/Functions/MDXFunction.aspx?f=64
    Hope this helps.
    Regards,
    Charlie Liao
    TechNet Community Support

  • QUESTION:  HOW TO WRITE QUERY  WITH MANY TO MANY RELATIONSHIPS

    Could someone help me out here?
    I was sitting here looking at some tables ie table_name and synonyms and wondering.
    If a table can belong to many synonyms and a synonym can belong to many tables how would one write a query where I would like to know which tables belong to each synonym or on the other hand which synonym belongs to what tables?
    Would I try to develop an outside join for this, a corrolated query or a query with a subquery or would there be another format that would work better?
    What would be the best method of attack on this?
    Thanks for your thoughts on this.
    al

    Actually, the relationship is not many to many. A table can have many synonyms, but a synonym within a namespace (i.e. a PUBLIC synonym, or a private synonym created by a user) can only point to one table. The xxx_synonmys tables already contain the information about the table_name and table_owner.
    John

  • How many conditions and exceptions  can be defined in a query?

    hi,
    Can any one tell
    How many conditions and exceptions  can be defined in a query?
    i.e
    How many condtion can be defineon an keyf igure with respective to charecteristics?
    Because if we define more conditions on one keyfigure with respective to different chars,there might be some overlap among the conditons andconditions might not work.
    Am i coorect?
    Similary for the exceptions also.
    Simply to be asked aswhat are the limitations of conditons and exceptions?
    Regards
    Naresh

    Hi Naresh,
    In Query we can no limit for creating Condition & Exception
    but Creating Condition : You can create two condition in a single condition it's work 'OR' Condition.
    You can build different condition it will work "AND' Condition.
    Thanks & Regards,
    Venkat.

  • How to write query for this in TopLink ?

    I am doing a simple search in jsp where the search will the based on the choices chosen by user.
    I had given 3 check boxes for those choices.
    The problem is, query will be based on the choice or choices chosed by the user.
    How to write query for this in TopLink ?
    Thanks in Advance..
    Jayaganesh

    Try below solution, it is NOT best solution but might work:
    Declare @Questions TABLE (QuestionID INT, QuestionText Varchar(100))
    INSERT INTO @Questions
    VALUES (1, 'Comment'), (2, 'Score')
    DECLARE @Answers TABLE (authkey INT, QuestionID INT, questiontext VARCHAR(100), answertext VARCHAR(100))
    INSERT INTO @Answers
    VALUES (101, 1, 'comment', 'hi!!'), (101, 2, 'score', '4'), (102, 1, 'comment', 'excellent'), (102, 2, 'score', '5'), (103, 2, 'score', '6'), (104, 2, 'score', '8')
    SELECT
    A.AuthKey
    ,Q.QuestionID
    ,Q.QuestionText
    ,A.AnswerText
    FROM
    @Questions Q
    INNER JOIN @Answers A ON Q.QuestionID = A.QuestionID
    UNION
    SELECT
    A.AuthKey
    ,Q.QuestionID
    ,Q.QuestionText
    ,Null
    FROM
    @Questions Q
    CROSS JOIN @Answers A
    WHERE
    NOT EXISTS (SELECT 1 FROM @Answers SubQry WHERE SubQry.AuthKey = A.AuthKey AND SubQry.QuestionID = Q.QuestionID)
    Output
    AuthKey | QuestionID
    | QuestionText
    | AnswerText
    101 | 1 | Comment | hi!!
    101 | 2 | Score | 4
    102 | 1 | Comment | excellent
    102 | 2 | Score | 5
    103 | 1 | Comment | NULL
    103 | 2 | Score | 6
    104 | 1 | Comment | NULL
    104 | 2 | Score | 8
    Best Wishes, Arbi; Please vote if you find this posting was helpful or Mark it as answered.

  • How would I write this query

    [USERNAME]
    [GROUP]
    User1
    New Member
    User2
    New Member
    User1
    All Members
    User1
    Gold Member
    How would I write a query so that I could select * from the above table where a user has more than 1 group (user1) and if one of the groups = 'All members' then ignore that row and just return the all the other rows for the user that has > 1 group. 
    Thanks in advance.  I can write the query for counting if a user has more than 1 group, but I stuck on the rest.
    Thanks again

    Try this
    declare @tab table(USERNAME varchar(10), Usergroup varchar(15));
    insert into @tab values
    ('User1','New Member'),
    ('User2','New Member'),
    ('User1','All Members'),
    ('User1','Gold Member');
    select * from
    (Select *,ROW_NUMBER() OVer(partition by username Order by case when Usergroup ='All members' then 0 else 1 end desc) RN From @tab ) t
    where t.usergroup= case when t.rn >1 and t.Usergroup='All members' then 'Do not return' else t.Usergroup end
    Satheesh
    My Blog |
    How to ask questions in technical forum

  • How to write query group by  time(minutes)

    Hi,
    i am writting query like this.
    select host_id,pd_user, pdUserUtil,
    timestamp from
    (select host_id,pd_user,
    avg(pd_cpu) pdUserUtil,
    to_Char(PD_REPORTED_TIMESTAMP,'yyyy-mm-dd hh:MI') timestamp
    from sp_process_detail_current SP
    where exists (select * from
    sp_process_detail_current
    having
    max(PD_REPORTED_TIMESTAMP)-sp.PD_REPORTED_TIMESTAMP<5/1440)
    group by pd_user,host_Id,to_Char(PD_REPORTED_TIMESTAMP,'yyyy-mm-dd hh:MI'))
    where host_id='DSCP04881' and pd_user='TOMCAT'
    TIMESTAMP PD_USER
    2006-06-30 08:07 TOMCAT
    2006-06-30 08:08 TOMCAT
    2006-06-30 08:10 TOMCAT
    BUT WHILE ACCESSING IN JAVA
    java.lang.NumberFormatException: For input string: "30:08:07"
    at java.lang.NumberFormatException.forInputString(NumberFormatException.

    Question: What datatype in Java are you using as placeholder for the timestamp column?
    It's only taking the "2006-06-" part.
    Post here the java code (an exceprt of course), though I feel there's better forums for this subject.

  • How to write query

    Hi,
    I need expert advice.
    on daily basis we are updating meter reading ( meter reading is nothing but "meter number / unit / date".
    Let say there are 10 apartment  and each apartment has separate meter.
    i need to write query get missing meter reading on a specific date.
    Thanks

    Unit Master
    401
    402
    403
    404
    Daily Meter Reading
    date               unit     meter
    01-01-01          1     401
    01-01-01          1     402
    01-01-01          1     404  ( on 1st of jan user update the meter reading but if you notice unit number 403 is missing)
    02-01-01          1     401
    02-01-01                402 ( on 2nd of jan user update the meter reading but if you notice this time 402 is meter unit is missing)
    02-01-01          1     403
    02-01-01          1     404
    03-01-01                  401
    03-01-01          1     402
    03-01-01          1     403 ( on 3rd of jan user update the meter reading but if you notice this time meter unit is missing for 401 and 404 is unit is missing)
    We want the following output
    if user run report on 1st of jan system should return value of 403 unit number
    if user run report on 2nd of jan then system should return value of 402 unit number
    if user run report on 3rd of jan then system should return value of 401/404 unit number
    Hope this help to get my expected answer.

  • How to output a query results into a text file

    How to output a query results into a text file instead of outputing it to the screen..
    is there a way for us to write a SQL query which specifies to output the query results to a text file.
    Pls let me know how to do it
    Thanking u in advance
    regards
    Muraly

    Muraly,
    If you are using SQL*Plus 8.1.6 or later, you can also spool output to a file in HTML format, eg
    SET MARKUP HTML ON SPOOL ON PREFORMAT OFF ENTMAP ON
    SPOOL c:\temp\report.html
    SELECT DEPARTMENT_NAME, CITY
    FROM EMP_DETAILS_VIEW
    WHERE SALARY>12000;
    SPOOL OFF
    SET MARKUP HTML ENTMAP OFF
    In iSQL*Plus 9.0.1 (the browser-based interface to SQL*Plus) onwards, you can also send the HTML output to a new web browser window, or an html file -- much easier than the command line method.
    Alison

  • How to get the Query output to Excel

    Hi ,
    Can you tell me how to get the Query output to excel with out using any third party tool?
    Can you tell me how to write the code in Webservice and call it..
    Please explain it Elaboartly..
    Thanks in Advance!!!
    Mini

    whats your source system?
    you can use Live office, or query as a webservice if you are getting data from universe
    if you're getting data from SAP BI query and you have a java stack on your netweaver then you can get the data directly using sap bi connector in xcelsius.
    good luck

  • How to build a query to join on two tables without mapping

    I did Automatic mapping by the workbench Directofield mapping with the table and java object.
    Wanted to build a simple join query by joining on the same field on both the tables.Not the sql query through the toplink using expression builder.
    Please help.............
    Spent one full day for this................

    Thanks Don for the reply,sorry to bug you,but i need help.....
    SELECT A.AGNCY_C,
         A.TYPE_C,
         A.RESN_C,
         A.S_TYPE_C,
         A.SUB_ID_C,
         A.RY_C
    FROM RATING A, REF B
    WHERE A.ID_C = B._ID_C
    AND A.ALPHA_C = B.ALPHA_C
    AND A.EFF_D >= B.MATURITY_D
    This is the real query i was talking about.I did mapping automatically through the workbench,generated java classes also throught the workbench.
    Now they don't want to execute the raw sql.They wanted to get all the RATING objects with the where condition.
    So how to build a query by using toplink.
    tried your example
    ExpressionBuilder builder = new ExpressionBuilder();
    Expression creditRating = builder.getTable("RATING").getField("ID_C");
    Expression issue_ref = builder.getTable("REF").getField("ID_C");
    Expression join = creditRating.equal(issue_ref);
    I am getting java.lang.OutOfMemoryError
    error.
    I selected the option generate classes and descriptors
    from the tables (RATING,REF).,so it created the classes and dscriptors automatically.
    In Database script for the table RATING like this
    ALTER TABLE RATING ADD (
    CONSTRAINT RATING_F1 FOREIGN KEY (ID_C, ALPHA_C)
    REFERENCES REF (ID_C,ALPHA_C));
    I think when i generate descriptor automatically it is keeping this association.
    Please help me.........

  • How to change the query ?

    Gurus,
    Please clarify this
    Select ils.item,(nvl(sum(decode(tdh.loc_type,'S',decode(tdh.tran_code, 1,tdh.units,0),
    'W',decode(tdh.tran_code,30,0,31,0,32, tdh.units,33, tdh.units,37,0,38, tdh.units,20,0,1,0))),0))"result"
    from tran_data_history tdh, item_loc_soh ils
    where tdh.item = ils.item
    and ils.item in('100002513','100002484')
    and trunc(tdh.TRAN_DATE)
    between (*select first_date from (select item,min(trunc(first_received)) first_date From Item_loc_soh*
    where item in('100002513','100002484') and first_received is not null
    group by item ))
    and trunc(sysdate)
    group by ils.item
    Problem with this query is, the block mentioned in BOLD is returning two rows, and I am writing between and clause .. since the query in bold is returning more than one row, it is throwing error stating that single query returns more than one row .. Requirement is, whatever date which is returned with value 100002513 should be compared with sysdate, and other value 100002484 should be compared with sysdate .. Irrespective of number of items (whether 1 or more than 1) should simultaneously be compared with sysdate
    How to change my query
    Regards

    Inner query
    Select First_Date From (Select Item, Min(Trunc(First_Received)) First_Date
                                        From Item_Loc_Soh *
                                        Where Item In ('100002513', '100002484')
                                        And First_Received Is Not Null
                                        Group By Item)
    this will return 2 rows for each of the item id 2513 and 2484 because you write query for this 2 rows
    and select min date
    which means
    item id 2513  min date
    item id 2482  min date
    if you want to compare just a date to sysdate then do it directly,
    Select Ils.Item,
           (Nvl(Sum(Decode(Tdh.Loc_Type,
                           'S',
                           Decode(Tdh.Tran_Code, 1, Tdh.Units, 0),
                           'W',
                           Decode(Tdh.Tran_Code,
                                  30,
                                  0,
                                  31,
                                  0,
                                  32,
                                  Tdh.Units,
                                  33,
                                  Tdh.Units,
                                  37,
                                  0,
                                  38,
                                  Tdh.Units,
                                  20,
                                  0,
                                  1,
                                  0))),
                0)) "result"
      From Tran_Data_History Tdh, Item_Loc_Soh Ils
    Where Tdh.Item = Ils.Item
       And Ils.Item In ('100002513', '100002484')
       And Trunc(First_Received)  = Sysdate;
    however i dont understand importance of Tdh.Tran_Date and which date you exactly want to compare
    hope this helps,
    if not plz clarify more on the questionsEdited by: Nicloei W on Sep 24, 2008 11:51 PM

Maybe you are looking for

  • Issues linking media in cs3 project opened in cs5.5

    So trying to help out a co-worker with a project that was originally created in Premiere Pro 2. Taking that to CS 5.5 we are having issues linking AVI files. In Premiere Pro 2 and in CS3 premiere has no problem seeing the avi as an audio file or isn'

  • PIN sign-in GPO not applying to workstations

    I am currently testing Windows server 2012 R2 with Windows 8.1 tablets and cannot get PIN sign-in to work on the client machines, I have disabled local policy processing and all of the management is coming from GP, however when I manually apply the p

  • Lost my phone numbers, how do i get them back with a backup?

    how do you work the back up so i can get my notes and phone numbers back?

  • Joining three tables to get specific data set

    table1 id seq dat table2 id seq empid taxid Table3 empid taxid I want to find out records That have same id,seq,empid having different taxid column Common to three of the tables . Please help me

  • Need help with x1 tv and no sound

    I have recently switched to x1platform tv for my 3 hd lcd tvs.  Two work fine, but one is constantly having an issue.  When I turn the tv on there is no sound.  I have to turn off the tv and turn on several times.  Sometimes I unplug the cable box an