Ȩ > ÀÚ·á½Ç > News Letter
 
Download
News Letter
Site Link
XpertMon ´º½º·¹ÅÍ 15È£
2007/03/22 10:20 9937


¾È³çÇϼ¼¿ä. DB2 ¹× XpertMon »ç¿ëÀÚ ¿©·¯ºÐ!
¢ß ¾ÆÀÌƼ¿¢½ºÆÛÆ®±×·ì DB »ç¾÷ºÎÀÔ´Ï´Ù.
À̹øÁÖ ´º½º·¹ÅÍ´Â È¿°úÀûÀÎ SQL ÀÛ¼º, Áï SQLÀ» ´õ ºü¸£°Ô ½ÇÇàÇÒ ¼ö ÀÖ´Â ÀÛ¼º¹æ¹ý¿¡
´ëÇØ »ìÆ캸µµ·Ï ÇÏ°Ú½À´Ï´Ù.
È¿°úÀûÀ¸·Î SQLÀ» ÀÛ¼ºÇÏ°Ô µÇ¸é, ÀÀ¿ëÇÁ·Î±×·¥ÀÇ ¼º´ÉÀ» Çâ»ó½Ãų ¼ö ÀÖÀ¸¹Ç·Î,
ÃÖ¼ÒÀÇ ºñ¿ëÀ¸·Î ½Ã½ºÅÛÀÇ ¾ÈÁ¤¼º°ú È¿À²¼ºÀ» ³ôÀÏ ¼ö ÀְԵ˴ϴÙ.


È¿°úÀûÀÎ SQL ÀÛ¼º °¡À̵å
  1. ½ÇÁ¦·Î ÇÊ¿äÇÑ Ä÷³µé¸¸ °¡Á®¿Àµµ·Ï SQLÀ» ÀÛ¼ºÇϽʽÿÀ. select * ¹®Àº »ç¿ëÇÏÁö ¸¶½Ê½Ã¿À. Ä÷³ ¼ö°¡ ¸¹¾ÆÁú¼ö·Ï CPU »ç¿ë·üÀÌ ³ô¾ÆÁý´Ï´Ù.
  2. WHERE ÀýÀ» ÀûÀýÈ÷ »ç¿ëÇÏ¿© ÇÊ¿äÇÑ µ¥ÀÌÅ͸¦ ÀûÀýÈ÷ Á¦ÇÑÇϵµ·Ï ÇÕ´Ï´Ù.
  3. Host º¯¼ö¸¦ »ç¿ëÇÒ °æ¿ì Å×À̺í Ä÷³ Type°ú ±æÀÌ¿Í µ¿ÀÏÇÏ°Ô Á¤ÀÇÇÏ¿© »ç¿ëÇϽʽÿÀ. ¸¸¾à ±×·¸Áö ¾Ê´Ù¸é, DB2°¡ À妽º¸¦ »ç¿ëÇÒ ¼ö ¾ø¾î¼­ ¼º´É¿¡ ºÎÁ¤ÀûÀÎ ¿µÇâÀ» ¹ÌÄ¡°Ô µË´Ï´Ù. ¿¹¸¦ µé¾î, CHAR(6)À¸·Î Á¤ÀÇµÈ Ä÷³À» CHAR(4)³ª CHAR(7) ÀÎ Çʵå¿Í ºñ±³ÇÏ°Ô µÇ¸é µ¥ÀÌÅÍ º¯È¯ÀÌ ÀϾ°í DB2°¡ À妽º¸¦ »ç¿ëÇÏ´Â ´ë½Å µ¥ÀÌÅÍ ½ºÄµÀ» ÇÏ°ÔµÇ¾î ¼º´ÉÀÌ ÀúÇϵ˴ϴÙ.
  4. SQL ¹®Àå¿¡ Order by ÀýÀ» »ç¿ëÇÏ°Ô µÇ¸é ¸ðµç cursor ÇÁ·Î¼¼½ÌÀ» ¼öÇàÇØ¾ß ÇϹǷÎ, ²À ÇÊ¿äÇÑ Ä÷³¸¸ Order by ¸¦ »ç¿ëÇϽʽÿÀ.
  5. Select °á°ú ¸®ÅϵǴ ÇàÀÇ ¼ö°¡ ÇÑ °ÇÀÏ °æ¿ì¿¡´Â SELECT INTO ÀýÀ» »ç¿ëÇÏ´Â °ÍÀÌ Cursor¸¦ »ç¿ëÇÏ´Â °Íº¸´Ù ¼º´É¿¡ ÁÁ½À´Ï´Ù. ÇÏÁö¸¸, °á°ú µ¥ÀÌÅ͸¦ º¯°æÇØ¾ß ÇÏ´Â °æ¿ì¿¡´Â FOR UPDATE OF ¸¦ ÀÌ¿ëÇÏ´Â Cursor·Î ¼±¾ðÇÏ´Â °ÍÀÌ °»½ÅµÇ´Â Row¿¡ Exclusivce LockÀ» °É¾î µ¥ÀÌÅÍ ¹«°á¼ºÀ» º¸ÀåÇØÁֹǷΠ´õ ÁÁ½À´Ï´Ù.
  6. Á¶È¸ Àü¿ëÀÏ °æ¿ì¿¡´Â Select ¹®¿¡ FOR FETCH ONLY ÀýÀ» »ç¿ëÇÕ´Ï´Ù.
  7. DISTINCTÀÇ »ç¿ëÀ» ÇÇÇÕ´Ï´Ù. Distinct ¸¦ »ç¿ëÇϸé Sort°¡ ¹ß»ýÇϹǷÎ, Áߺ¹¿¡ º° ¹®Á¦°¡ ¾ø´Ù¸é »ç¿ëÇÏÁö ¾Êµµ·Ï ÇÕ´Ï´Ù.
  8. JOIN Àº Ưº°ÇÑ »óȲÀ» Á¦¿ÜÇϸé 5°³ À̳»·Î Á¦ÇÑÇÏ´Â °ÍÀÌ ÁÁ½À´Ï´Ù. ¸¸¾à ±× ÀÌ»ó Å×À̺íÀ» »ç¿ëÇؾßÇϸé, Subquery ´ë½Å¿¡ Join À» »ç¿ëÇϽʽÿÀ. Optimizer °¡ JoinÀ» »ç¿ëÇÒ ¶§ µ¥ÀÌÅÍ Á¢±Ù ¹æ¹ýÀ» ´õ ¸¹ÀÌ °¡Áö°í Àֱ⠶§¹®ÀÔ´Ï´Ù. ±×·¯³ª ¿¹¿Üµµ ÀÖÀ¸¹Ç·Î Äõ¸®º°·Î Å×½ºÆ®°¡ ÇÊ¿äÇÕ´Ï´Ù.
  9. ORDER BY, GROUP BY, DISTINCT, UNION À» »ç¿ëÇÒ °æ¿ì ÇØ´ç Ä÷³¿¡ Index ¸¦ Ãß°¡ÇÏ´Â °ÍÀÌ ÁÁ½À´Ï´Ù.
  10. ´ë¾ÈÀÌ ÀÖ´Ù¸é SQL Á¶°Ç ³»¿¡¼­ SUBSTR ÇÔ¼öÀÇ »ç¿ëÀ» ÇÇÇÏ´Â °ÍÀÌ ÁÁ½À´Ï´Ù. ¿¹¸¦ µé¾î ´ÙÀ½°ú °°Àº °æ¿ì substr ´ë½Å like¸¦ »ç¿ëÇϽʽÿÀ. like¸¦ »ç¿ëÇÏ´Â °æ¿ì index ¸¦ »ç¿ëÇÏ°Ô µË´Ï´Ù.
    ¿¹) select custinfo from sales where substr(serial,1,4) = ¡®1333¡¯
       select custinfo from sales where serial like ¡®1333%¡¯
  11. SQLÀÇ ±âÁ¸ ÇÔ¼ö(AVG,COUNT,MAX,MIN,SUM)¸¦ »ç¿ëÇϽʽÿÀ. SQLÀÇ ±âÁ¸ ÇÔ¼ö¸¦ »ç¿ëÇÏ´Â °ÍÀÌ ÀÌ·± ÇÔ¼ö¸¦ ÀÀ¿ëÇÁ·Î±×·¥À¸·Î ¸¸µé¾î »ç¿ëÇÏ´Â °Íº¸´Ù ´õ È¿°úÀûÀÔ´Ï´Ù.
  12. ´ë¾ÈÀÌ ÀÖ´Ù¸é SQLÀÇ Scalar ÇÔ¼öÀÇ »ç¿ëÀ» ÇÇÇÕ´Ï´Ù. µ¥ÀÌÅÍ ÇüÅÂÀÇ º¯°æ, ¹®ÀÚ¿­ÀÇ Á¶ÀÛ, ±×¸®°í ³¯Â¥/½Ã°£ÀÇ º¯°æµéÀ» À§ÇØ »ç¿ëµÇ´Â SQL Scalar ÇÔ¼ö(INTEGER, DECIMAL, HEX, SUBSTµî)´Â »ç¿ëÀ» ÇÇÇϽʽÿÀ.
  13. ÀÚÁÖ °»½ÅµÇÁö ¾Ê´Â Ä÷³µéÀº Å×À̺íÀÇ ÃÊÀÔ¿¡ µÎ°í, ¹Ý¸é¿¡ ÀÚÁÖ °»½ÅµÇ´Â Ä÷³µéÀº Å×ÀÌºí ³¡¿¡ µÓ´Ï´Ù. ÀÌ°ÍÀº DB2 LOG¿¡ ¾î¶»°Ô DB2°¡ º¯È­ÇÑ °ÍÀ» ±â·ÏÇÏ´ÂÁö¸¦ ¿¬°üÁö¾î¼­ È¿°úÀûÀ¸·Î °í·ÁÇÑ °ÍÀÔ´Ï´Ù.
  14. ÀϹÝÀûÀ¸·Î, VARCHAR Ä÷³Àº Å×ÀÌºí ³¡¿¡ µÓ´Ï´Ù. ¸¸¾à ÀÚÁÖ °»½ÅµÇ´Â Ä÷³ÀÌ ÀÖ´Ù¸é ÀÚÁÖ °»½ÅµÇ´Â Ä÷³À» VARCHAR Ä÷³º¸´Ù ¿ì¼±ÀûÀ¸·Î Å×À̺íÀÇ ³¡¿¡ µÓ´Ï´Ù.
  15. <=, >= º¸´Ù´Â BETWEENÀ» »ç¿ëÇÕ´Ï´Ù. BETWEENÀº Optimizer¿¡°Ô ´õ È¿°úÀûÀÎ Á¢±Ù °æ·Î¸¦ ¼±ÅÃÇÏ°Ô ÇØÁÝ´Ï´Ù.
  16. ¹èÄ¡ ÇÁ·Î±×·¥ ¼öÇà½Ã, 󸮵Ǵ input dataÀÇ ¼ø¼­¸¦ Access ÇÏ´Â Å×À̺íÀÇ µ¥ÀÌÅÍ ¼ø¼­¿Í µ¿ÀÏÇÏ°Ô ¸ÂÃß¾î ÁֽʽÿÀ ÀÌ·¸°Ô Çϸé DB2 °¡ sequential prefetch¸¦ ¼öÇàÇϱ⠶§¹®¿¡ ¼º´ÉÀ» ³ôÀÏ ¼ö ÀÖ½À´Ï´Ù.
  17. multicolumn indexÀÇ °æ¿ì IndexÀÇ Matching Ä÷³¼ö°¡ ¸¹µµ·Ï Äõ¸®¸¦ ÀÛ¼ºÇÕ´Ï´Ù.
  18. CommitÀ» ÀÚÁÖÇϸé, ¼öÇà½Ã°£¿¡ ¿µÇâÀ» ¹ÌĨ´Ï´Ù. CommitÀ» ÀûÀýÈ÷ Á¶ÀýÇϽʽÿÀ.
  19. LIKE ´ë½Å INÀ» »ç¿ëÇÕ´Ï´Ù. ¸¸¾à ÀϾ ¼ö Àִ ƯÁ¤ ¼ö¸¸ ¾Ë°í ÀÖ´Ù¸é, LIKE¸¦ »ç¿ëÇÏ´Â °Íº¸´Ù IN¿¡ ¸ñ·ÏÀ» ³ª¿­ÇÏ´Â °ÍÀÌ ´õ È¿°úÀûÀÔ´Ï´Ù. ¿¹¸¦ µé¾î, ¸¸¾à Last NameÀÌ MÀ¸·Î ½ÃÀÛÇÏ´Â ¸ðµç ±Ù·ÎÀÚ¸¦ ã´Â´Ù¸é, LIKE ¡®m%¡¯ ´ë½Å¿¡ BETWEEN ¡®maaaaaaaaaaaaaa¡¯ and ¡®mzzzzzzzzzzzzzz¡¯¸¦ »ç¿ëÇϽʽÿÀ.
  20. NOTÀÇ »ç¿ë(EXISTS´Â Á¦¿Ü)À» ÇÇÇÕ´Ï´Ù. NOTÀº ´ÜÁö ¸Å¿ì º¹ÀâÇÑ Á¶°Ç¿¡¼­¸¸ ¼±ÅÃÀûÀ¸·Î »ç¿ëÇØ¾ß ÇÕ´Ï´Ù.
  21. ¸¸¾à ÀÀ¿ëÇÁ·Î±×·¥ ³»ÀÇ Ä÷³ °ªÀ» ÀÌ¹Ì ¾Ë°í ÀÖ´Ù¸é, SELECT Àý¿¡ Ä÷³ÀÇ »ç¿ëÀ» ÇÇÇÕ´Ï´Ù.
    ¿¹) select c1,c2,c3 into :c1, :c2,:c3 from t1 where c1 = :c1
  22. SELECT ¹®ÀÇ °á°ú Áߺ¹µÈ ÇàÀÌ ¾ø´Ù°í ¾Ë°í Àְųª, Áߺ¹µÈ µ¥ÀÌÅÍ°¡ À־ µÈ´Ù¸é , UNION ´ë½Å UNION ALLÀ» »ç¿ëÇÕ´Ï´Ù.
  23. ºÎÁ¤ÀÇ ³í¸®·Î Subquery¸¦ ÀÛ¼ºÇÒ ¶§, SQL¹®ÀÇ È¿À²¼ºÀ» ³ôÀ̱â À§ÇÏ¿© °¡´ÉÇϸé NOT IN ´ë½Å NOT EXISTS¸¦ »ç¿ëÇÕ´Ï´Ù. NOT EXISTS¸¦ »ç¿ëÇÒ ¶§, DB2´Â ´ÜÁö Á¸ÀçÇÏÁö ¾Ê´Â °Í¸¸ È®ÀÎÇÏÁö¸¸ NOT INÁ¶°ÇÀ» Æ÷ÇÔÇϸé, DB2´Â ¿Ïº®ÇÑ °á°ú¼ÂÀ» ±¸¼ºÇؼ­ Á¶°ÇÀ» ºñ±³ÇÏ°Ô µË´Ï´Ù.
  24. JOINÀº Subquery º¸´Ù ´õ È¿À²ÀûÀÔ´Ï´Ù.
    ¿¹) select eno,ename from emp , proj where workdept = deptno and empno = respemp (O)

    select eno, ename from emp
    where workdept = ( select deptno from proj
    where respemp = emp.empno) (X)


XpertMon for DB2 UDB V2
DB »ç¾÷ºÎ
Tel : 02-2108-1458
Fax : 02-2108-1459
Mobile : 011-896-6545
E-mail : hjlee@iteg.co.kr
URL : http://iteg.co.kr

¸ñ·Ï ±Û¾²±â ¼öÁ¤