¿¬½À 1.4: °áÇÕ, Á¶È¸ Á¶°Ç ¹× GROUP BY Àý Ãß°¡
½ÃÀÛÇϱâ Àü¿¡ ¿¬½À 1.3:
°á°ú ¿ ÁöÁ¤À» ¿Ï·áÇϽʽÿÀ.
ÀÌ ¿¬½À¿¡¼ ´ÙÀ½ ´Ü°è¸¦ ¼öÇàÇÏ¿© Á¶È¸¸¦ ±ÔÁ¤ÇÕ´Ï´Ù.
- ÇöÀç ºñµð¿À¸¦ ºô·Á°£ °í°´°ú ÇöÀç ºô·Á°£ ºñµð¿À·Î Á¶È¸ °á°ú¸¦
Á¦ÇÑÇÕ´Ï´Ù.
- »ç¿ëÀÚ°¡ Á¶È¸¸¦ ½ÇÇàÇÒ ¶§ ÁöÁ¤ÇÑ À̸§À» °¡Áö°í Àִ ƯÁ¤ °í°´À¸·Î
Á¶È¸ °á°ú¸¦ Á¦ÇÑÇÕ´Ï´Ù.
- ºô·Á°£ ºñµð¿À¸¦ ¹Ý³³ÇÏ´Â ¿äÀÏ, ºñµð¿À Á¦¸ñº° °¢ ¿äÀÏ,
±×¸®°í °í°´ À̸§º° ºñµð¿À Á¦¸ñÀ» ±âÁØÀ¸·Î Á¶È¸ °á°ú¸¦
±¸¼ºÇÕ´Ï´Ù.
Å×ÀÌºí °áÇÕ
°áÇÕ Á¶ÀÛÀº ÀÏÄ¡ÇÏ´Â ¿ °ªÀ» ±âÃÊ·Î µÎ °³ ÀÌ»óÀÇ Å×ÀÌºí¿¡¼
µ¥ÀÌÅ͸¦ °Ë»öÇÒ ¼ö ÀÖµµ·Ï ÇÕ´Ï´Ù. Å×À̺íÀÇ µ¥ÀÌÅÍ´Â ´ÜÀÏ °á°ú¿¡
¸µÅ©µË´Ï´Ù. ÀÌ Á¶È¸¿¡´Â µÎ °³ÀÇ °áÇÕÀÌ ÇÊ¿äÇÕ´Ï´Ù. Á¶È¸ °á°ú¿¡´Â
ÀÏÄ¡ÇÏ´Â CUST_ID ¿ °ªÀ» °®´Â RENTALS ¹× CUSTOMERS Å×À̺í Ç׸ñÀÌ
ÀÖ¾î¾ß ÇÕ´Ï´Ù. Á¶È¸ °á°ú¿¡´Â ÀÏÄ¡ÇÏ´Â ºñµð¿À ID(VID_ID ¿ °ª)°¡ ÀÖ´Â
RENTALS ¹× VIDEOS Å×À̺í Ç׸ñµµ ÀÖ¾î¾ß ÇÕ´Ï´Ù.
- Å×ÀÌºí ºÐÇÒâ¿¡¼ R Å×À̺íÀÇ Çì´õ¸¦ ¸¶¿ì½º ¿À¸¥ÂÊ ´ÜÃ߸¦ Ŭ¸¯Çϰí
ÆË¾÷ ¸Þ´º¿¡¼ °áÇÕ ÀÛ¼ºÀ» Ŭ¸¯ÇϽʽÿÀ.
- ¼Ò½º ¾Æ·¡ÀÇ °áÇÕ ÀÛ¼º â¿¡¼ ´ÙÀ½ ¼±ÅÃÀ» ¼öÇàÇϽʽÿÀ.
- Å×À̺í(º°¸í) ¸ñ·Ï¿¡¼ RENTALS(R)¸¦ Ŭ¸¯ÇϽʽÿÀ.
- ¿ ¸ñ·Ï¿¡¼ CUST_ID¸¦ Ŭ¸¯ÇϽʽÿÀ.
- ´ë»ó ¾Æ·¡¿¡¼ ´ÙÀ½ ¼±ÅÃÀ» ¼öÇàÇϽʽÿÀ.
- Å×À̺í(º°¸í) ¸ñ·Ï¿¡¼ CUSTOMERS(C)¸¦ Ŭ¸¯ÇϽʽÿÀ.
- ¿ ¸ñ·Ï¿¡¼ CUST_ID¸¦ Ŭ¸¯ÇϽʽÿÀ.
- È®ÀÎÀ» Ŭ¸¯ÇϽʽÿÀ.µÎ ¿ »çÀÌ¿¡
°áÇÕ Ä¿³ØÅͰ¡ Ç¥½ÃµË´Ï´Ù.
- Å×ÀÌºí ºÐÇÒâ¿¡¼, Æ÷ÀÎÅ͸¦ R(RENTALS) Å×À̺íÀÇ VID_ID
¿¿¡¼ V(VIDEOS) Å×À̺íÀÇ VID_ID ¿·Î ²ô½Ê½Ã¿À.
SQL ¼Ò½º ºÐÇÒâÀ» º¸°í ¼Ò½º Äڵ忡¼ °áÇÕÀ» È®ÀÎÇϽʽÿÀ.
WHERE
R.CUST_ID = C.CUST_ID
AND R.VID_ID = V.VID_ID
Å×ÀÌºí ºÐÇÒâ¿¡¼ µÎ °áÇÕ ¸ðµÎ ´ÙÀ½°ú °°ÀÌ ÀÛ¼ºµÇ¾úÀ½À» º¼ ¼ö ÀÖ½À´Ï´Ù.

Ä¿³ØÅ͸¦ ¸¶¿ì½º ¿À¸¥ÂÊ ´ÜÃ߷ΠŬ¸¯ÇÏ°í ÆË¾÷ ¸Þ´º¿¡¼
°áÇÕ À¯Çü ÁöÁ¤À» Ŭ¸¯ÇÑ ÈÄ °áÇÕ ÁöÁ¤ â¿¡¼ ¿øÇÏ´Â °áÇÕ À¯ÇüÀ»
¼±ÅÃÇÏ¿© Å×ÀÌºí ºÐÇÒâ¿¡¼ °áÇÕ À¯ÇüÀ» º¯°æÇÒ ¼ö ÀÖ½À´Ï´Ù(¿¹: ±âº» ³»ºÎ Á¶Àο¡¼
¿ÞÂÊ, ¿À¸¥ÂÊ ¶Ç´Â Àüü ¿ÜºÎ Á¶ÀÎÀ¸·Î).
Á¶È¸ Á¶°Ç ÀÛ¼º
´ÙÀ½À¸·Î, Á¶È¸°¡ ¿øÇÏ´Â °í°´ À̸§À» °¡Áú ¼ö ÀÖ°Ô °á°ú ÇุÀ» ÃßÃâÇϵµ·Ï
Á¶È¸¿¡´Â Á¶È¸ Á¶°ÇÀÌ ÀÖ¾î¾ß ÇÕ´Ï´Ù. µðÀÚÀÎ ºÐÇÒâ¿¡¼ Á¶°Ç ÆäÀÌÁö¸¦ »ç¿ëÇÏ¿©
Á¶È¸¿¡ Á¶°ÇÀ» Ãß°¡ÇϽʽÿÀ.
- Á¶°Ç ÅÇÀ» Ŭ¸¯ÇÏ¿© Á¶°Ç ÆäÀÌÁö¸¦ º¸½Ê½Ã¿À.
- ¿ ¿À» µÎ ¹ø Ŭ¸¯ÇÏ°í ¸ñ·Ï¿¡¼ C.NAMEÀ» Ŭ¸¯ÇϽʽÿÀ.
- ¿¬»êÀÚ ¿À» µÎ ¹ø Ŭ¸¯Çϰí = ¿¬»êÀÚ¸¦ Ŭ¸¯ÇϽʽÿÀ.
- °ª ¿À» µÎ ¹ø Ŭ¸¯Çϰí :custNameÀ» ÀÔ·ÂÇϽʽÿÀ.
º¯¼ö À̸§ ¾ÕÀÇ ÄÝ·ÐÀº Á¶È¸¸¦ ½ÇÇàÇÒ ¶§ °ªÀ¸·Î ´ëüµÉ
º¯¼ö¿¡ ´ëÇÑ SQL ±¸¹®ÀÔ´Ï´Ù. SQL Á¶È¸¸¦ ½ÇÇàÇÒ ¶§
ÀÌ ±¸¹®ÀÌ ¾î¶»°Ô ÀÛµ¿ÇÏ´ÂÁö Ç¥½ÃµË´Ï´Ù.
ÀÌÁ¦ Á¶°Ç ÆäÀÌÁö´Â ¾Æ·¡¿¡ Ç¥½ÃµÈ À̹ÌÁöó·³ º¸ÀÔ´Ï´Ù.

GROUP BY Àý Ãß°¡
Á¶È¸¸¦ ¿äÀϺ°, Á¦¸ñº° ¹× °í°´ À̸§º°·Î ±×·ìÈÇÕ´Ï´Ù.
SQL ºô´õ¿¡¼ GROUP BY ÀýÀ» ÀÛ¼ºÇÏ·Á¸é
µðÀÚÀÎ ºÐÇÒâ¿¡¼ ±×·ì ÆäÀÌÁö¸¦ »ç¿ëÇϽʽÿÀ. ÀÌ ºä¿¡¼
¿ Ç¥Çö½Ä, ÁßøµÈ ±×·ì, ±×·ìÈ ¼¼Æ®(DB2 Universal Database¿¡¼¸¸),
ROLLUP ¹× CUBE ±×·ìÈ ÇÔ¼ö(Oracle ¹× DB2 Universal Database¿¡¼)¸¦
»ç¿ëÇÏ¿© Á¶È¸ °á°ú¿¡¼ °í±Þ ±×·ìȸ¦ ÀÛ¼ºÇÒ ¼öµµ ÀÖ½À´Ï´Ù.
- µðÀÚÀÎ ºÐÇÒâ¿¡¼ ±×·ì ÅÇÀ» Ŭ¸¯ÇϽʽÿÀ.
- DAYOFWEEK ÇÔ¼ö¸¦ °á°ú ¿·Î Ãß°¡ÇϽʽÿÀ.
- ¿ Å×ÀÌºí¿¡¼ ù ¹øÂ° ÇàÀ» µÎ ¹ø Ŭ¸¯ÇÏ°í ¸ñ·Ï¿¡¼
Ç¥Çö½Ä ºôµå¸¦ Ŭ¸¯ÇÑ ÈÄ Enter¸¦ ´©¸£½Ê½Ã¿À.
- ¸¶¹ý»çÀÇ Ç¥Çö½Ä ºô´õ ÆäÀÌÁö¿¡¼ ÇÔ¼ö¸¦ Ŭ¸¯ÇϽʽÿÀ.
ÇÔ¼ö Ç¥Çö½Ä ºô´õ ÆäÀÌÁö°¡ ¿¸³´Ï´Ù.
- ÇÔ¼ö Ä«Å×°í¸® ¼±Åà ¸ñ·Ï¿¡¼ ³¯Â¥ ¹× ½Ã°£À» Ŭ¸¯ÇϽʽÿÀ.
- ÇÔ¼ö ¼±Åà ¸ñ·Ï¿¡¼ DAYOFWEEK¸¦ Ŭ¸¯ÇϽʽÿÀ.
- ÇÔ¼ö ¼¸í ¼±Åà ¸ñ·Ï¿¡¼
DAYOFWEEK(DATE) --> INTEGER¸¦ Ŭ¸¯ÇϽʽÿÀ.
ÇÔ¼ö ¼¸íÀÌ ÇÔ¼ö¿¡ ÇϳªÀÇ Àμö°¡ ÇÊ¿äÇÔÀ» Ç¥½ÃÇÕ´Ï´Ù.
- Àμö Å×À̺íÀÇ °ª ¿¿¡¼ ¼¿À» Ŭ¸¯ÇÏ°í ¸ñ·Ï¿¡¼ R.DATE¸¦
Ŭ¸¯ÇÑ ÈÄ Enter¸¦ ´©¸£½Ê½Ã¿À.
- ¿Ï·á¸¦ Ŭ¸¯ÇϽʽÿÀ. ¿ Å×À̺íÀÇ Ã¹ ¹øÂ° ¼¿¿¡
DAYOFWEEK ÇÔ¼ö°¡ Ç¥½ÃµË´Ï´Ù.
- ¿ Å×À̺íÀÇ µÎ ¹øÂ° Çà¿¡¼ ¸ñ·ÏÀ¸·ÎºÎÅÍ V.TITLE ¿À»
¼±ÅÃÇÑ ÈÄ, ¼¼ ¹øÂ° Çà¿¡¼ C.NAMEÀ» ¼±ÅÃÇϽʽÿÀ.
±×·ì ÆäÀÌÁö´Â ÀÌÁ¦ ´ÙÀ½ À̹ÌÁö¿Í À¯»çÇÏ°Ô Ç¥½ÃµË´Ï´Ù.

ÀÌÁ¦ Á¶È¸°¡ ¿Ï·áµÇ¾ú½À´Ï´Ù. Á¶È¸´Â SQL ºô´õ¿¡¼ ´ÙÀ½°ú °°ÀÌ º¸ÀÔ´Ï´Ù.

ÀÌÁ¦ ¿¬½À 1.5:
SQL Á¶È¸ ½ÇÇàÀ» ½ÃÀÛÇÒ ¼ö ÀÖ½À´Ï´Ù.