How to avoid the 'union' to combine several sqls in one?

Hi all

I wrote to the sql below for a list of instructions which do not have audit defined on it.

The sql works very well and gives the right output, but its effective not because I am struck dba_stmt_audit_opts several times.

Is there anyway I can avoid the union and get the same result by pressing dba_stmt_audit_opts once or twice?

Thanks for you help,
Hozy

------------------------------------------
Select * from
(
SELECT "audit_alter_any_table" as a PROPERTY, 'ALTER ANY TABLE' as VALUE, "NA" as value2
OF dba_stmt_audit_opts
WHERE audit_option = "ALTER ANY TABLE"
AND the success = "BY ACCESS.
AND failure = "BY ACCESS.
AND user_name IS NULL
AND proxy_name IS NULL
Having COUNT ()) = 0
Union
SELECT "audit_alter_user" as a PROPERTY, "ALTER USER' as VALUE,"NA"as value2
OF dba_stmt_audit_opts
WHERE audit_option = 'ALTER USER'
AND the success = "BY ACCESS.
AND failure = "BY ACCESS.
AND user_name IS NULL
AND proxy_name IS NULL
Having COUNT ()) = 0
Union
SELECT "audit_create_role" as a PROPERTY, "CREATE ROLE" as a VALUE, "NA" as value2
OF dba_stmt_audit_opts
WHERE audit_option = "CREATE ROLE"
AND the success = "BY ACCESS.
AND failure = "BY ACCESS.
AND user_name IS NULL
AND proxy_name IS NULL
Having COUNT ()) = 0
Union
SELECT "audit_create_user" as a PROPERTY, "CREATE USER" as a VALUE, "NA" as value2
OF dba_stmt_audit_opts
WHERE audit_option = 'CREATE USER'
AND the success = "BY ACCESS.
AND failure = "BY ACCESS.
AND user_name IS NULL
AND proxy_name IS NULL
Having COUNT ()) = 0
Union
SELECT "audit_create_session" as a PROPERTY, "CREATE SESSION" as a VALUE, "NA" as value2
OF dba_stmt_audit_opts
WHERE audit_option = "CREATE SESSION".
AND the success = "BY ACCESS.
AND failure = "BY ACCESS.
AND user_name IS NULL
AND proxy_name IS NULL
Having COUNT ()) = 0
Union
SELECT "audit_drop_any_proc" as a PROPERTY, "DROP ANY PROCEDURE" as VALUE, "NA" as value2
OF dba_stmt_audit_opts
WHERE audit_option = 'DROP ANY PROCEDURE'
AND the success = "BY ACCESS.
AND failure = "BY ACCESS.
AND user_name IS NULL
AND proxy_name IS NULL
Having COUNT ()) = 0
Union
SELECT "audit_drop_any_table" as a PROPERTY, "DROP ANY TABLE" as a VALUE, "NA" as value2
OF dba_stmt_audit_opts
WHERE audit_option = 'DROP ANY TABLE'
AND the success = "BY ACCESS.
AND failure = "BY ACCESS.
AND user_name IS NULL
AND proxy_name IS NULL
Having COUNT ()) = 0
Union
SELECT "audit_grant_any_priv" as a PROPERTY, "GRANT ANY PRIVILEGE" as a VALUE, "NA" as value2
OF dba_stmt_audit_opts
WHERE audit_option = "GRANT ANY PRIVILEGE"
AND the success = "BY ACCESS.
AND failure = "BY ACCESS.
AND user_name IS NULL
AND proxy_name IS NULL
Having COUNT ()) = 0
Union
SELECT "audit_drop_any_role" as a PROPERTY, "DROP ANY ROLE" as a VALUE, "NA" as value2
OF dba_stmt_audit_opts
WHERE audit_option = 'DROP ANY ROLE'
AND the success = "BY ACCESS.
AND failure = "BY ACCESS.
AND user_name IS NULL
AND proxy_name IS NULL
Having COUNT ()) = 0
Union
SELECT "audit_execute_proc" as a PROPERTY, "RUN the PROCEDURE" as VALUE, "NA" as value2
OF dba_stmt_audit_opts
WHERE audit_option = 'PROCEDURE '.
AND the success = "BY ACCESS.
AND failure = "BY ACCESS.
AND user_name IS NULL
AND proxy_name IS NULL
Having COUNT ()) = 0
Union
SELECT "audit_select_any_dic" as a PROPERTY, "SELECT ANY DICTIONARY" as VALUE, "NA" as value2
OF dba_stmt_audit_opts
WHERE audit_option = "SELECT ANY DICTIONARY"
AND the success = "BY ACCESS.
AND failure = "BY ACCESS.
AND user_name IS NULL
AND proxy_name IS NULL
Having COUNT ()) = 0
Union
SELECT "audit_grant_any_obj" as a PROPERTY, 'GRANT ANY OBJECT' as VALUE, "NA" as value2
OF dba_stmt_audit_opts
WHERE audit_option = "GRANT ANY OBJECT"
AND the success = "BY ACCESS.
AND failure = "BY ACCESS.
AND user_name IS NULL
AND proxy_name IS NULL
Having COUNT ()) = 0
Union
SELECT "audit_create_any_lib" as a PROPERTY, "CREATE ANY LIBRARY" as a VALUE, "NA" as value2
OF dba_stmt_audit_opts
WHERE audit_option = "CREATE ANY LIBRARY"
AND the success = "BY ACCESS.
AND failure = "BY ACCESS.
AND user_name IS NULL
AND proxy_name IS NULL
Having COUNT ()) = 0
Union
SELECT "audit_create_lib" as a PROPERTY, "CREATE LIBRARY" as a VALUE, "NA" as value2
OF dba_stmt_audit_opts
WHERE audit_option = "CREATE LIBRARY"
AND the success = "BY ACCESS.
AND failure = "BY ACCESS.
AND user_name IS NULL
AND proxy_name IS NULL
Having COUNT ()) = 0
);

Maybe something like that is what you are looking for:

with options as (select 'ALTER ANY TABLE' col1 from dual union all
                 select 'ALTER USER' col1 from dual union all
                 .... -- all your audit_options
                 )
select col1
from   options
minus
select audit_option
from   dba_stmt_audit_opts;

Tags: Database

Similar Questions

  • How to avoid the union and use a left join

    Hello

    I have the following tables

    {code}

    create the table mainTable

    (col1 varchar2 (2) varchar2 (2) col2, col3 varchar2 (2), col4 varchar2 (2));

    create table secTable

    (col1 varchar2 (2));

    create the table secTable1

    (col2 varchar2 (2));

    create the table secTable2

    (col3 varchar2 (2));

    Insert in maintable

    values ('a', 'b', 'this,' would be ');

    Insert in maintable

    values (', 'o', 'n', 'p');

    insert into secTable

    values ('a');

    insert into secTable1

    values ('b');

    insert into secTable2

    values ('c');

    commit;

    {code}

    I made a request, drank, I would use join without clause union how can I change to receive the same result as the following query?

    {code}

    Select t1.*, 'bad value' | T1.Col1
    from maintable t1
    T1.Col1 left join t2 = t2.col1 sectable
    where t2.col1 is null
    Union of all the
    Select t1.*, 'bad value' | T1.col2
    from maintable t1
    Join t2 left on t1.col1 = t2.col2 sectable1
    where t2.col2 is null
    Union of all the
    Select t1.*, 'bad value' | T1. COL3
    from maintable t1
    Join t2 left on t1.col1 = t2.col3 sectable2
    where t2.col3 is null

    {code}

    Thank you

    Coco

    Like this?:

    SQL > SELECT col1, col2, col3, col4, xvalue

    2 from (SELECT m0.*

    3, NVL (t0.col1, 'bad value t0' | m0.col1) t0_col1

    4, NVL (t1.col2, 'bad value t1' | m0.col2) t0_col2

    5, NVL (t2.col3, 'bad value t2' | m0.col3) t0_col3

    Maintable m0 6

    LEFT OUTER JOIN sectable t0 7

    8. WE (m0.col1 = t0.col1

    9 AND t0.col1 IS NULL)

    10 LEFT OUTER JOIN sectable1 t1

    11. WE (m0.col1 t1.col2 =

    12 AND t1.col2 IS NULL)

    13 LEFT OUTER JOIN t2 sectable2

    14. WE (m0.col1 = t2.col3

    15 t2.col3 AND IS NULL))

    16 UNPIVOT INCLUDES NULL values (xvalue wrongly IN (t0_col1, t0_col2, t0_col3))

    17 ORDER BY xvalue

    18.

    COL1 COL2 COL3 COL4 XVALUE

    ------ ------ ------ ------ ---------------------------------------------------

    a b c d bad value t0 a

    m o n p bad value m t0

    a b c d bad value t1 b

    m o n p o t1 value of evil

    a b c d bad value t2 c

    m o n p value t2 n bad

    6 selected lines.

  • How to avoid the launch of Labview when called by Teststand VI

    Hi, friends.

    I am a student of teststand. I wrote a few screws by Labview. Now, I want to invoke in teststand environment. But when I run the sequence. LabVIEW automatically launches. How to avoid the launch of Labview when I run the sequence?

    Thank you.

    I'm not sure that I follow what you're saying...  But it seems that when the VI is called, the LabVIEW Development software is started and you want to avoid this.

    If you create an executable file or a dll and that any call within TestStand, she should not call the development environment.  You must have the LabVIEW runtime engine installed on the target computer.

    For several years I used TestStand with LV, if my memory does not have to be precise.  I think that the above worked for me.  However, it seems that I remember something to have the LV code in debug mode, causing to open development environment... but it's a distant memory.    You do not use breakpoints where the LV VI is called, are you?

    R

  • Satellite Pro 4200 how to avoid the mistakes of the ACPI

    Satellite Pro 4200 how to avoid the ACPI errors after installing SP2 for windows XP Prof
    The problem is that my computer after installation service Pack 2 need about 15 minutes from time of shoutdown - what should I do to avoid this problem.
    Piotr Plecke

    Hello
    in this case it would be interesting what Type of laptop it is exactly.

    You will find this model on the bottom of your laptop. There is a review of it.

    Some models have a Bios update available, others not, for example.

    Please send additional information!

    Good bye

  • Camileo S10 - how to avoid the 'information' during video playback on TV

    I just received my Camileo S10... very nice indeed... but how to avoid the track and reading data to be shown on the screen during playback on my TV...?

    Go to the movies, then before you start playing click the OK button. This also works when you save. You must do this before playing or recording.

  • How to avoid the launch of Labview VI when he invokes in Teststand environment?

    Hi, friends.

    I am a student of teststand. I wrote a few screws by Labview. Now, I want to invoke in teststand environment.

    But when I run the sequence. LabVIEW automatically launches.

    How to avoid the launch of Labview when I run the sequence?

    Thank you.

    LabVIEW programs require a runtime engine. Under the TestStand configuration drop-down, select adapters. You can change the LabVIEW adapter to select the runtime rather than the development system.

    This should prevent the main screen of LabVIEW to appear, but you will not be able to change your LabVIEW VIs while they run of TestStand using the runtime engine.

  • How to avoid the minimizin of the screen when the user down ups slide

    How to avoid the minimizin of the screen when the user ups the down slide.

    Hello

    I guess that not possible because this is a feature of the system. Be able to substitute the blow to the gesture of bottom up would mean for combat when a user can switch to another application. It is not something that an application must be able to do it at all.

  • How to avoid the string * empty * on new pushScreen

    Someone knows how to avoid the string * empty * coming on each press of the screen and instead * void * can I have my own channel at the same place... Please let me know its possible or not...

    Thank you

    read the API:

    http://www.BlackBerry.com/developers/docs/4.7.0api/NET/rim/device/API/UI/component/ListField.html#se... (java.lang.String, int)

  • How to avoid the color address IOS in email HTML Template?

    Hello

    How to avoid the color address IOS in email HTML Template?

    Thank you

    Rahul Bhambri

    Hello Rahul,

    Please use css in your style sheet

    a {[x-Apple - detectors of data]

    color: inherit! important;

    text-decoration: none! important;

    font size: inherit! important;

    Police-family: inherit! important;

    Police-weight: inherit! important;

    line-height: inherit! important;

    }

    Thank you

    edynamic expert Eloqua

  • How to avoid the report query needs a unique key to identify each line

    Hello

    How to avoid the error below

    The report query needs a unique key to identify each row. The supplied key cannot be used for this query. Please change the report attributes to define a unique key column.

    I have master-detail tables but without constraints, when I created a query as dept, emp table he gave me above the error.

    Select d.deptno, e.ename

    by d, e emp dept

    where e.deptno = d.deptno

    Thank you and best regards,

    Ashish

    Hi mickael,.

    Work on interactive report?

    You must set the column link (in the attributes report) to something other than "link to display single line." You can set it to 'Exclude the column link' or 'target link to Custom.

  • Question CP9: HTML5: Apple: Android: how to avoid the click on the Play button / tap?

    Hello

    Captivate 9.0.0.223: HTML5 draft.

    I'm sorry to ask this question, it's a little old chestnut on HTML5 in Apple iOS and Android.

    I have searched on the internet and forums for a solution underway, but could not find something that works.

    The problem is how to avoid the PLAY button, which forces the user to click / tap on it, when the project is accessible on an Apple or Android system.

    Play_icon.png

    The project will be published on the internet for use on any Windows, Apple or Android device.

    I have no control over the Web server or devices that will use the people, so that any changes to the software server or browser is out of the question.

    I have tried both a plain HTML5 and a responsive project, but neither avoid the Play button. I put an example of 1 slide on these links.

    http://www.hoffits.com/test_responsive/index.html

    http://www.hoffits.com/test_html5/index.html

    The bottom line is: ' is it possible to remove the need for the user to click / press the Play button?

    Thank you.

    Peter

    Cardiff

    In Wales

    UK

    In your normal HTML5, there is a line (I think it's 46) with this code:

    CP. DoCPInit();

    Add cp.movie.play (); Located below.

    so:

    CP. DoCPInit();

    CP. Movie.Play ();

  • How to avoid the glossy look and brilliant nostrils?

    I just built my first character of fuse and when I import into Photoshop, its nostrils are incandescent - as if the light shines through the back of his head!

    This fuse:

    Screen Shot 2016-01-17 at 04.27.53.png

    Becomes this in Photoshop:

    Screen Shot 2016-01-17 at 04.47.21.png

    I use a brush to set the nostrils, but have no idea how fix eye - of the suggestions?

    Even better - any ideas on how to avoid the glossy look and glowing nostrils?

    Thank you very much
    Malcolm

    Hey, Malcolm.

    Best way to explain what basically rendering 3D correctly really takes a lot of time, haha.  So that you may be able to work with the real-time 3D model and make changes quickly, we use two different rendering methods.

    There is an "Interactive" mode which is not like the beautiful light/shade, but is very fast - and that's what you see when you interact with the default template.

    Then, there is a mode "Raytraced" which is much more advanced calculations and stuff to give you a proper lighting / shadow.  Raytraced rendered may take time if so we can not use it all the time.

    In order to get the lights/shadows appropriate you need to perform a path Ray would make on the document.  Best way to do this:

    • Select your 3D layer in the layers panel
    • Make a selection in the drawing area to the area that you want to make (I recommend to test rendering of area to check the lighting/shadows before committing to make the whole layer).
    • Push the button is rendered at the bottom of the properties panel (it looks like a cube in a rectangle box, right next to the delete icon).

    There are other things that you must do if you want to get the best image search quality such as the addition of secondary lights!  You can add more lights in the 3D Panel using the small icon of light at the bottom.  Have 2-3 stage lights and adjusting their colors can make a big difference with the Assembly of your character in the scene.  Here is a small image for some comparisons:

    You can see the image with two lights a look much more realistic lighting and shadows and raytraced of one and two versions are much nicer and cleaner!

    Hope that helps!

  • How to avoid the FDM-command being moved files from the OpenBatch folder

    Hello world

    I have a little problem with Batch Processing of the FDM - I need to stop the movement of files in the folder OpenBatch - when a batch is executed.

    The installer by using the Task Manager, a load a Batch Script and Script integration all works very well. However, the process must run every 3 hours, so I need the file "A_LedgerTransLocation_Actual_nov - 2013_RR.txt" to remain in the \Inbox\Batches\OpenBatch\ folder at any time.

    How to avoid the file is moved?


    Best regards
    Frederik




    PS: I noticed on the OTN Forum is it may be possible to script a solution such as:

    FSO1 = CreateObject ("Scripting.FileSystemObject") set
    Set File1 = FSO1. GetFile ("FDM Directory\FDM Application\Inbox\Batches\Openbatch\A_LedgerTransLocation_Actual_nov-2013_RR.txt")
    The BATCHENG value. PcolFiles = BATCHENG.fFileCollectionCreate (CStr (strDelimiter), File1)

    However this is not possible, as the controllers of the company need to edit the. TXT file themselves. They will not be able to edit the script too.

    I don't think you can prevent the FDM, move the file. I'm assuming that the file change in each period to use the last period of POV, so I think that option easiset to copy the file (based on a part of the name (location?) to a temporary location before began the FOM and write again later.)

  • How to avoid the link of a null value in a column of link

    Hello

    How to avoid the link of a column with the value zero. Is that the link should be disabled for the column with the value null, and it must be enabled for all that have a value.

    Ex

    DEPTNO NAME (link column)

    10 SCOTT
    20 MAC
    30 SMITH
    40         -
    50 SAM

    I don't want to link to the value null in the name column, but the name remaining should have link. Please help me.


    Kind regards
    Barro

    Hello

    One way is like this:
    1. create a column not displayed, called link_display in your report to return N or Y depending on whether you want the link by adding the SQL report:

        NVL2(name, 'Y', 'N') link_display 
    

    2. in the header of the region, define a class for the column name using:

    
    

    3. for the name column containing the link add link attributes: class = "" display_link_ #LINK_DISPLAY # ""

    Rod West

  • Re: How to avoid the password displayed in the Unix box APPS.

    Hello


    How to avoid the APPS password displayed in the Unix box using the command ps for concurrent program with the run method defined as 'host '.

    Kind regards.

    Salvation;

    What is the version of the EBS?

    Please see:
    Apps to hide password
    Hide the apps password

    Respect of
    HELIOS

Maybe you are looking for