Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Mailing Lists -> Oracle-L -> Re: SQL statement extract from v$sqltext

Re: SQL statement extract from v$sqltext

From: <Brian_P_MacLean_at_eFunds.Com>
Date: Fri, 15 Mar 2002 14:23:29 -0800
Message-ID: <F001.0042B226.20020315142329@fatcity.com>

This is and old but effective script, it's what you asked for and even more....

REM

REM   $Author: oracle $
REM   $Locker:  $
REM     $Date: 2000/06/19 17:35:26 $
REM $Revision: 1.1 $
REM  $RCSfile: tool_shared_pool_statements.sql,v $
REM   $Source: /home/oracle/DBA/tool/RCS/tool_shared_pool_statements.sql,v
$
REM $State: Exp $
REM
set verify off
set pagesize 35
set linesize 132
set pause off
set pause 'Hit enter to continue'
set feedback off
set showmode off
set echo off

PROMPT
PROMPT Sort BY Selections

PROMPT ------------------------

PROMPT 1 = Sorts Performed
PROMPT 2 = Executions
PROMPT 3 = Disk Blocks Read
PROMPT 4 = Disk Blocks Read / Executions
PROMPT 5 = Buffer Blocks Gotton
PROMPT 6 = Buffer Blocks Gotton / Executions
PROMPT 7 = Rows Processed
PROMPT 8 = Rows / Executions
ACCEPT USER_INPUT1 NUMBER PROMPT 'Please enter one now:>'
col sort_by_number new_value sort_by_number_value noprint
col sort_by_text   new_value sort_by_text_value   noprint
select decode(&USER_INPUT1, 1,1, 2,2, 3,3, 4,4, 5,5, 6,6, 7,7, 8,8, 8) sort_by_number,
       decode(&USER_INPUT1, 1,'Sorts Performed',
                            2,'Executions',
                            3,'Disk Blocks Read',
                            4,'Disks / Executions',
                            5,'Buffer Blocks Gotton',
                            6,'Buffers / Executions',
                            7,'Rows Processed',
                            8,'Rows / Executions',
                            'Rows / Executions') sort_by_text
from dual;

REM


PROMPT
PROMPT Sort ORDER Selections

PROMPT ---------------------

PROMPT 1 = Descending
PROMPT 2 = Ascending
ACCEPT USER_INPUT2 NUMBER PROMPT 'Please enter one now:>' col order_by_text new_value order_by_text_value noprint select decode(&USER_INPUT2, 1,'Desc', 2,'Asc', 'Desc') order_by_text from dual;

REM


PROMPT spooling output to /tmp/tool_shared_pool_statements.lst PROMPT
PROMPT Working, Please wait.....
set term off
spool /tmp/tool_shared_pool_statements.lst

col SQL_TEXT         format a132        heading "SQL Statment"
col SORTS            format 9999        heading "Sorts"
col EXECUTIONS       format 99999       heading "Executions"
col USERS_EXECUTING  format 999         heading "Currently|Executing"
col DISK_READS       format 9999999     heading "Disk|Blocks|Read"
col BUFFER_GETS      format 9999999     heading "Buffer|Blocks|Gotten"
col ROWS_PROCESSED   format 999999999   heading "Rows|Processed"
col COMMAND_TYPE     format 999         heading "Command|Number"
col OPTIMIZER_MODE   format a6          heading "Parse|Mode"
REM ADDRESS                                  RAW(4)
REM HASH_VALUE                               NUMBER
col AA               format 99999999    heading "Disks /|Executions"
col BB               format 99999999    heading "Buffers /|Executions"
col CC               format 99999999    heading "Rows /|Executions"

ttitle left 'SORT BY: ' '&sort_by_text_value' -
     center 'V$SQL' -
     right 'PAGE:'  format 999 sql.pno skip 1 -
     left 'SORT ORDER: ' &order_by_text_value -
     center 'Shared Pool Statements' skip 2

select SORTS, EXECUTIONS,
       DISK_READS, DISK_READS / decode(EXECUTIONS, NULL,1, 0,1, EXECUTIONS)
AA,
       BUFFER_GETS, BUFFER_GETS / decode(EXECUTIONS, NULL,1, 0,1,
EXECUTIONS) BB,
       ROWS_PROCESSED, ROWS_PROCESSED / decode(EXECUTIONS, NULL,1, 0,1,
EXECUTIONS) CC,
       OPTIMIZER_MODE, USERS_EXECUTING,
       SQL_TEXT

from v$sql
order by &sort_by_number_value &order_by_text_value;

spool off

!more /tmp/tool_shared_pool_statements.lst

exit

REM ================================ END OF FILE
===============================



                                                                                                              
                    "David Jones"                                                                             
                    <djones1688_at_ho       To:     Multiple recipients of list ORACLE-L <ORACLE-L_at_fatcity.com>  
                    tmail.com>           cc:                                                                  
                    Sent by:             Subject:     SQL statement extract from v$sqltext                    
                    root_at_fatcity.c                                                                            
                    om                                                                                        
                                                                                                              
                                                                                                              
                    03/15/02 02:45                                                                            
                    PM                                                                                        
                    Please respond                                                                            
                    to ORACLE-L                                                                               
                                                                                                              
                                                                                                              




Does anyone have a handy PL/SQL script which can extract complete SQL statement from v$sqltext sorting by v$sqlarea's buffer_gets ?

Thanks for the help

dj



MSN Photos is the easiest way to share and print your photos: http://photos.msn.com/support/worldwide.aspx
--
Please see the official ORACLE-L FAQ: http://www.orafaq.com
--
Author: David Jones
  INET: djones1688_at_hotmail.com

Fat City Network Services    -- (858) 538-5051  FAX: (858) 538-5051
San Diego, California        -- Public Internet access / Mailing Lists
--------------------------------------------------------------------
To REMOVE yourself from this mailing list, send an E-Mail message
to: ListGuru_at_fatcity.com (note EXACT spelling of 'ListGuru') and in
the message BODY, include a line containing: UNSUB ORACLE-L
(or the name of mailing list you want to be removed from).  You may
also send the HELP command for other information (like subscribing).




-- 
Please see the official ORACLE-L FAQ: http://www.orafaq.com
-- 
Author: 
  INET: Brian_P_MacLean_at_eFunds.Com

Fat City Network Services    -- (858) 538-5051  FAX: (858) 538-5051
San Diego, California        -- Public Internet access / Mailing Lists
--------------------------------------------------------------------
To REMOVE yourself from this mailing list, send an E-Mail message
to: ListGuru_at_fatcity.com (note EXACT spelling of 'ListGuru') and in
the message BODY, include a line containing: UNSUB ORACLE-L
(or the name of mailing list you want to be removed from).  You may
also send the HELP command for other information (like subscribing).
Received on Fri Mar 15 2002 - 16:23:29 CST

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US