42 lines
1.2 KiB
SQL
42 lines
1.2 KiB
SQL
|
|
COL BIND_NAME FOR A30
|
|
|
|
SELECT * FROM (
|
|
SELECT
|
|
s.sql_id
|
|
, position
|
|
, bind_name
|
|
, COUNT(DISTINCT s.address) parents
|
|
, COUNT(DISTINCT RAWTOHEX(s.address||':'||s.child_number)) children
|
|
, COUNT(DISTINCT datatype) datatypes
|
|
--, COUNT(DISTINCT datatype)||CASE WHEN COUNT(DISTINCT datatype) > 1 THEN ' ('||TO_CHAR(MIN(datatype))||'..'||TO_CHAR(MAX(datatype))||')' END for_example
|
|
, COUNT(DISTINCT max_length) maxlengths
|
|
, COUNT(DISTINCT array_len) maxarraylens
|
|
FROM
|
|
v$sql s
|
|
, v$sql_bind_metadata sbm
|
|
WHERE
|
|
s.child_address = sbm.address
|
|
AND s.sql_id LIKE '&1'
|
|
GROUP BY
|
|
s.sql_id
|
|
, sbm.position
|
|
, sbm.bind_name
|
|
ORDER BY
|
|
s.sql_id
|
|
, sbm.position
|
|
)
|
|
WHERE
|
|
rownum <= 30
|
|
/
|
|
|
|
|
|
-- 1 ADDRESS RAW(8)
|
|
-- 2 POSITION NUMBER
|
|
-- 3 DATATYPE NUMBER
|
|
-- 4 MAX_LENGTH NUMBER
|
|
-- 5 ARRAY_LEN NUMBER
|
|
-- 6 BIND_NAME VARCHAR2(30)
|
|
-- 7 CON_ID NUMBER
|
|
|