| Line 2... |
Line 2... |
| 2 |
-- Locate package versions that use the package specified by :PV_ID
|
2 |
-- Locate package versions that use the package specified by :PV_ID
|
| 3 |
-- Match control via :MATCH
|
3 |
-- Match control via :MATCH
|
| 4 |
-- :MATCH 0 - MAtch any package name
|
4 |
-- :MATCH 0 - MAtch any package name
|
| 5 |
-- :MATCH 1 - Match Package name and Project Suffix
|
5 |
-- :MATCH 1 - Match Package name and Project Suffix
|
| 6 |
-- :MATCH 2 - Match exactly the package. Name, Version and Suffix
|
6 |
-- :MATCH 2 - Match exactly the package. Name, Version and Suffix
|
| - |
|
7 |
with
|
| - |
|
8 |
aa AS ( select NVL(v_ext,'LINK') as ext from package_versions where pv_id = :PV_ID),
|
| - |
|
9 |
bb AS (select pkg_id from package_versions where pv_id = :PV_ID)
|
| 7 |
SELECT DISTINCT SDK_NAME, st.SDK_ID, COUNT(st.SDK_ID) as COUNT
|
10 |
SELECT DISTINCT SDK_NAME, st.SDK_ID, COUNT(st.SDK_ID) as COUNT
|
| 8 |
FROM SDK_CONTENT sc,
|
11 |
FROM SDK_CONTENT sc,
|
| 9 |
SDK_TAGS st,
|
12 |
SDK_TAGS st,
|
| 10 |
SDK_NAMES sn,
|
13 |
SDK_NAMES sn,
|
| 11 |
PACKAGE_VERSIONS pv
|
14 |
PACKAGE_VERSIONS pv,
|
| - |
|
15 |
aa,bb
|
| 12 |
WHERE sc.SDKTAG_ID = st.SDKTAG_ID
|
16 |
WHERE sc.SDKTAG_ID = st.SDKTAG_ID
|
| 13 |
AND (sc.PV_ID = :PV_ID OR :MATCH != 2)
|
17 |
AND (sc.PV_ID = :PV_ID OR :MATCH != 2)
|
| 14 |
AND (NVL(pv.v_ext,'LINK') in ( select NVL(v_ext,'LINK') from package_versions where pv_id = :PV_ID ) OR :MATCH = 2 OR :MATCH = 0)
|
18 |
AND (NVL(pv.v_ext,'LINK') in ( aa.ext ) OR :MATCH = 2 OR :MATCH = 0)
|
| 15 |
AND (pv.PKG_ID in ( select pkg_id from package_versions where pv_id = :PV_ID) OR :MATCH = 2)
|
19 |
AND (pv.PKG_ID in ( bb.pkg_id ) OR :MATCH = 2)
|
| 16 |
AND st.SDK_ID = sn.SDK_ID
|
20 |
AND st.SDK_ID = sn.SDK_ID
|
| 17 |
AND sc.PV_ID = pv.PV_ID
|
21 |
AND sc.PV_ID = pv.PV_ID
|
| 18 |
GROUP BY SDK_NAME , st.SDK_ID
|
22 |
GROUP BY SDK_NAME , st.SDK_ID
|
| 19 |
ORDER BY UPPER(SDK_NAME)
|
23 |
ORDER BY UPPER(SDK_NAME)
|