|
1. ¹öÀü : 9.2.0.8
--------------------------------------------------------------------------------------------
2 SQL ¹®
SELECT A.NO,
A.PIECE_ID,
REPLACE ( A.PIECE_NM, ’"’, ’’ ) PIECE_NM,
A.ALBUM_ID,
REPLACE ( D.ALBUM_NM, ’"’, ’’ ) ALBUM_NM,
A.LYRIC_ID,
A.ARTIST_ID,
B.ARTIST_NM,
D.ALBUM_SECT,
’Y’ SERVICE_SECT,
E.CNT
FROM (
SELECT *
FROM (
SELECT ROWNUM NO, A2.*
FROM (
SELECT A.PIECE_ID, A.PIECE_NM, A.ALBUM_ID, A.LYRIC_ID, A.ARTIST_ID, A.REG_DATETIME
FROM DS_PIECE_COPY_INFO B,
DS_CONTENTS_GENRE F,
DS_PIECE A
WHERE B.PIECE_ID=F.CON_ID AND
A.PIECE_ID=B.PIECE_ID AND
F.GENRE_ID = ’110’ AND
B.copy_yn=’Y’
GROUP BY A.PIECE_ID, A.PIECE_NM, A.ALBUM_ID, A.LYRIC_ID, A.ARTIST_ID, A.REG_DATETIME
ORDER BY A.REG_DATETIME DESC) A2
) A1
WHERE NO BETWEEN 1 AND 20
) A,
DS_ARTIST B,
IM_DRM C,
DS_ALBUM D,
(
SELECT COUNT(DISTINCT(B.PIECE_ID)) CNT
FROM DS_PIECE_COPY_INFO B,
DS_CONTENTS_GENRE F
WHERE B.PIECE_ID=F.CON_ID AND
F.GENRE_ID = ’110’ and
B.copy_yn=’Y’ ) E
WHERE A.ALBUM_ID = D.ALBUM_ID
AND A.ARTIST_ID = B.ARTIST_ID
AND A.PIECE_ID= C.CON_ID
AND C.DRM_TYPE=’streaming’
ORDER BY NO
-------------------------------------------------------------------
3¹ø SET AUTOTRACE TRACEONLY EXPLAIN ÈÄ °á°ú
0 SELECT STATEMENT Optimizer=CHOOSE
1 0 SORT (ORDER BY)
2 1 NESTED LOOPS
3 2 NESTED LOOPS
4 3 NESTED LOOPS
5 4 NESTED LOOPS
6 5 VIEW
7 6 COUNT
8 7 VIEW
9 8 SORT (GROUP BY)
10 9 NESTED LOOPS
11 10 NESTED LOOPS
12 11 TABLE ACCESS (BY INDEX ROWID) OF 'DS_CONTENTS_GENRE'
13 12 INDEX (RANGE SCAN) OF 'DS_CONTENTS_GENRE_X1' (NON-UNIQUE)
14 11 TABLE ACCESS (BY INDEX ROWID) OF 'DS_PIECE'
15 14 INDEX (UNIQUE SCAN) OF 'MS_PIECE_NEW_P' (UNIQUE)
16 10 TABLE ACCESS (BY INDEX ROWID) OF 'DS_PIECE_COPY_INFO'
17 16 INDEX (UNIQUE SCAN) OF 'DS_PIECE_COPY_INFO_NEW_P' (UNIQUE)
18 5 TABLE ACCESS (BY INDEX ROWID) OF 'DS_ALBUM'
19 18 INDEX (UNIQUE SCAN) OF 'MS_ALBUM_NEW_P' (UNIQUE)
20 4 TABLE ACCESS (BY INDEX ROWID) OF 'DS_ARTIST'
21 20 INDEX (UNIQUE SCAN) OF 'MS_ARTIST_NEW_P' (UNIQUE)
22 3 TABLE ACCESS (BY INDEX ROWID) OF 'IM_DRM'
23 22 INDEX (RANGE SCAN) OF 'IM_DRM_X1' (NON-UNIQUE)
24 2 VIEW
25 24 SORT (AGGREGATE)
26 25 VIEW
27 26 SORT (GROUP BY)
28 27 NESTED LOOPS
29 28 NESTED LOOPS
30 29 TABLE ACCESS (BY INDEX ROWID) OF 'DS_CONTENTS_GENRE'
31 30 INDEX (RANGE SCAN) OF 'DS_CONTENTS_GENRE_X1' (NON-UNIQUE)
32 29 INDEX (UNIQUE SCAN) OF 'MS_PIECE_NEW_P' (UNIQUE)
33 28 TABLE ACCESS (BY INDEX ROWID) OF 'DS_PIECE_COPY_INFO'
34 33 INDEX (UNIQUE SCAN) OF 'DS_PIECE_COPY_INFO_NEW_P' (UNIQUE)
-----------------------------------------------------------------------------------
4. SQL ¼³¸í...
F.GENRE_ID = ’110’ AND
B.copy_yn=’Y’ Á¶°ÇÀ¸·Î
PHP¿¡¼ ÆäÀÌ¡À» ÇÒ·Á°í ÇÕ´Ï´Ù. ±Ùµ¥ ¸î°Ç ¾ÈµÇ´Â 20°Ç ¸¸ »Ì¾Æ ³¾·Á°í ÀÌ·¸°Ô Èûµé°Ô
ÇÒ Çʿ䰡 ÀÖ³ª ½Í¾î¼ ¿Ã¸³´Ï´Ù.. Àü ÃÖ¼±À» ´ÙÇØ¼ ±×³ª¸¶ Æ©´×À» ÇØ¼ 0.15°¡ ³ª¿À´Âµ..¤Ð¤Ð
´ÜÃàÀÌ ÇÊ¿ä ÇÕ´µ´ç.. Ä¿¾ï... ¾Æ ±×¸®°í ¸¶Áö¸· CNT ´Â À§ Á¶°Ç¿¡ ¸¸Á·ÇÏ´Â ÇÕ°è°¡ ÇÊ¿ä ÇØ¼
±×³É ³Ö¾î º»°Å±¸¿ä..-_-; ¾î¶² Ư´ÜÀÇ Á¶Ä¡°¡ ÀÖÀ»±î¿è?... °íÀÛ 20°Ç ¶§¹®¿¡ À§¿¡ 6000°ÇÀÌ µÇ´Â°É
´Ù »Ì¾Æ¼ ²À BETWEEN À¸·Î ÇØ°áÀ» ÇØ¾ß ÇÒ±î¿ë?.. ºÐ¼® ÂÀ ºÎʵ右´Ï´Ù.. ÂÁ...
---------------------------Ãß °¡ ³» ¿ë ----------------------
EÀÇ Á¶°Çµµ
F.GENRE_ID = ’110’ AND
B.copy_yn=’Y’ °°Àº Å×ÀÌºí¿¡¼ ÃÑ °¹¼ö¸¦ ±¸ÇÏ´Â °Ì´Ï´Ù. PHP Àüü ÇàÀ» ±¸ÇÒ·Á±¸¿ä
|