9-1.¼­ºêÄõ¸®

1.´ÜÀÏÇà ¼­ºêÄõ¸®

¼­ºêÄõ¸®(SubQuery)´Â Äõ¸®¹® ¾È¿¡ ¶Ç ´Ù¸¥ Äõ¸®¹®ÀÌ Æ÷ÇÔµÈ ±¸¹®ÀÌ´Ù. ´Ü¹ßÀûÀÎ Áú¹®ÀÌ ¾Æ´Ñ º¹ÇÕÀûÀÌ°í ´Ü°èÀûÀÎ Áú¹®À» ÇÒ ¶§´Â ¿©·¯ °³ÀÇ Äõ¸®¸¦ ÁßøÇؼ­ »ç¿ëÇÑ´Ù. ¸®ÅÏÇÏ´Â Çà°ú ¿­ÀÇ °³¼ö¿¡ µû¶ó ´ÙÀ½°ú °°ÀÌ ºÐ·ùÇÑ´Ù.

 

l ´ÜÀÏÇà ¼­ºêÄõ¸® : ÇϳªÀÇ °ª¸¸ ¸®ÅÏÇÑ´Ù. ½ºÄ®¶ó°ª Çϳª¸¦ ¸®ÅÏÇÑ´Ù.

l ´ÙÁßÇà ¼­ºêÄõ¸® : ¿©·¯ °³ÀÇ ÇàÀ» ¸®ÅÏÇÑ´Ù.

l ´ÙÁßÇà ¿­ ¼­ºêÄõ¸® : ¿©·¯ °³ÀÇ ¿­·Î ±¸¼ºµÈ ¿©·¯ °³ÀÇ ÇàÀÎ Å×À̺íÀ» ¸®ÅÏÇÑ´Ù.

 

¶Ç ¿ÜºÎÄõ¸®¿ÍÀÇ °ü°è¿¡ µû¶ó µ¶¸³ ¼­ºêÄõ¸®¿Í ¿¬°ü ¼­ºêÄõ¸®·Îµµ ±¸ºÐÇÑ´Ù. ¼­ºêÄõ¸®ºÎÅÍ ³­À̵µ°¡ ¾à°£ ¿Ã¶ó°¡Áö¸¸ ÀÌÇØÇÏÁö ¸øÇÒ Á¤µµ·Î ¾î·ÆÁö´Â ¾ÊÀ¸¸ç ³ª¸§ Àç¹Ìµµ ÀÖ´Ù. ¼ø¼­´ë·Î Â÷±Ù Â÷±Ù ¾Ë¾Æº¸ÀÚ. ½Ç½ÀÀ» ÅëÇØ ¿Ö ÀÌ·± ±¸¹®ÀÌ ÇÊ¿äÇÑÁö ÀÌÇØÇÏ¸é ±¸¹®µµ ÀÚ¿¬½º·´°Ô ÀÍÈú ¼ö ÀÖ´Ù.

SELECT ¸í·ÉÀº DB ¿£Áø¿¡°Ô Á¤º¸¸¦ ¿ä±¸ÇÏ´Â Áú¹®ÀÌ´Ù. SELECT·Î ÇÒ ¼ö ÀÖ´Â Áú¹®Àº ¾ÆÁÖ ÂªÀº ´Ü¹®¸¸ °¡´ÉÇϸç FROM ÀýÀÌ Çϳª¹Û¿¡ ¾ø¾î ÇÑ Å×ÀÌºí¿¡ ÀÖ´Â Á¤º¸¸¸ Á¶»çÇÒ ¼ö ÀÖ´Ù. ÀÏ»ó »ýÈ°¿¡¼­ ÈçÈ÷ ÇÏ´Â Áú¹®À» ¿¹·Î µé¾î º¸¸é SELECT·Î ÇÒ ¼ö ÀÖ´Â Áú¹®Àº ´ÙÀ½ ¼öÁØ Á¤µµ¹Û¿¡ ¾ÈµÈ´Ù.

 

³Ê À̸§ÀÌ ¹¹´Ï?

³Ê ¾î´À Çб³ ´Ù´Ï´Ï?

 

±×·¯³ª ½Ç»ýÈ°ÀÇ Áú¹®Àº À̺¸´Ù º¹ÀâÇØ ¿©·¯ ´Ü°èÀÇ Áú¹®À» ÇѲ¨¹ø¿¡ ÇÏ´Â °æ¿ì°¡ ¸¹´Ù. µÎ °³ ÀÌ»óÀÇ ¹®ÀåÀÌ °ãÃÄ ÀÖ´Â º¹¹®ÀÌ´Ù. Àå³­ÇÏ´Â °Í °°Áö¸¸ ¿ì¸®´Â ½ÇÁ¦·Î À̺¸´Ù º¹ÀâÇÑ ÇüÅÂÀÇ Áú¹®À» ÁÖ°í ¹Þ´Â´Ù.

 

³Ê°¡ ´Ù´Ï´Â Çб³ÀÇ ±³Àå ¼±»ý´ÔÀÇ À̸§Àº?

´ãÀÓ ¼±»ý´ÔÀÇ ¼Â° µþÀÇ »ýÀÏÀº?

 

½Ç»ýÈ°À» Àü»êÈ­ÇÑ DB¿¡¼­µµ ÀÌ Á¤µµ ¼öÁØÀÇ Äõ¸®¸¦ ½ÇÇàÇÒ ¼ö ÀÖ¾î¾ß ÇÏ¸ç ±× ¹æ¹ýÀÌ ¹Ù·Î ¼­ºêÄõ¸®ÀÌ´Ù. Áý°è ÇÔ¼öÆí¿¡¼­ ÃÖ´ë Àα¸¼ö¸¦ °¡Áø µµ½Ã¸¦ ±¸ÇÏ´Â ¹®Á¦¸¦ ¼Ò°³ÇÑ ÀûÀÌ Àִµ¥ ÀÌÁ¦ Á¤´äÀ» ¿¬±¸ÇØ º¸ÀÚ. ¹®Á¦ÀÇ Äõ¸®´Â ´ÙÀ½°ú °°´Ù.

 

SELECT MAX(popu), name FROM tCity;

 

Àα¸ÀÇ ÃÖ´ë¼ö´Â MAX(popu)·Î ±¸ÇÒ ¼ö ÀÖ°í µµ½ÃÀÇ À̸§Àº name Çʵ带 ÀÐÀ¸¸é µÈ´Ù. ±×·¯³ª MAX ÇÔ¼öÀÇ °á°ú´Â Áý°èÇÑ ÇϳªÀÇ °ªÀÌ°í name Çʵå´Â µµ½Ã¸í ¿©·¯ °³¿©¼­ ÀÌ µÑÀ» °°ÀÌ Ãâ·ÂÇÒ ¼ö´Â ¾ø´Ù. ÃÖ´ë°ªÀº Çϳª´Ï±î ÇÑ Ä­¿¡ Ãâ·ÂÇÏ°í µµ½Ã¸íÀº ¿©·¯ °³´Ï±î °¢°¢ ³ª¿­ÇÏ¸é ¾î¶³±î?

 

MAX(popu)

name

974

¼­¿ï

ºÎ»ê

¿À»ê

ûÁÖ

ÀüÁÖ

¼øõ

̵̇

ȫõ

 

ÀÌ Ãâ·ÂÀÌ ±×·²µíÇØ º¸ÀÌÁö¸¸ ÀÌ°Ç Å×ÀÌºí ¸ð¾çÀÌ ¾Æ´Ï´Ù. µü ÇϳªÀÇ Áý°è°ª°ú µµ½Ã ¸ñ·ÏÀ» ³×¸ð ¹ÝµíÇÑ ¸ð¾çÀ¸·Î Ãâ·ÂÇÒ ¼ö ¾ø´Ù. ÀÏ¹Ý Çʵ峢¸®³ª Áý°è ÇÔ¼ö³¢¸®´Â Çà ¼ö°¡ ¸Â¾Æ ÇÊµå ¸ñ·Ï¿¡ °°ÀÌ ¾µ ¼ö ÀÖÁö¸¸ Áý°è ÇÔ¼ö¿Í ÀÏ¹Ý Çʵ带 °°ÀÌ ¾µ ¼ö´Â ¾ø´Ù.

¶ÇÇÑ ÀÌ Ãâ·Â °á°ú´Â ¾ÖÃÊÀÇ Áú¹®°úµµ ¸ÂÁö ¾Ê´Ù. MAX(popu)´Â ÃÖ´ë Àα¸¼ö¸¦ Áý°èÇÑ °ÍÀÌ ¸ÂÁö¸¸ name µµ½ÃÁß ¾î¶² µµ½Ã°¡ ±× Àα¸¼ö¸¦ °¡Áø °ÍÀÎÁö ÀÌ µµÇ¥¸¸À¸·Î´Â ¾Ë ¼ö ¾ø´Ù. ¿ÞÂÊ ¿­°ú ¿À¸¥ÂÊ ¿­ÀÇ ¿¬°ü¼ºÀÌ ÀüÇô ¾ø´Ù. À§ Äõ¸®¹®Àº ¸»µµ ¾ÈµÇ°í ½Ç¿ë¼ºµµ ¾øÀ¸¸ç ±×·¡¼­ ¿¡·¯ 󸮵ȴÙ. ±×·¸´Ù¸é ´ÙÀ½ ¸í·ÉÀº ¾î¶³±î?

 

SELECT name FROM tCity WHERE popu = MAX(popu);

 

ÃÖ´ë Àα¸¼ö¿Í °°Àº Àα¸¸¦ °¡Áø µµ½Ã¸íÀ» Ãâ·ÂÇß´Ù. µÉ °Í °°Áö¸¸ ÀÌ ¹®Àåµµ ¿¡·¯ÀÌ´Ù. Áý°è´Â ±×·ì¿¡ ´ëÇØ ½ÇÇàÇÏ´Â ¿¬»êÀε¥ Á¶°ÇÀý¿¡ ±×·ìÀÌ ÁöÁ¤µÇ¾î ÀÖÁö ¾Ê¾Æ WHERE Àý¿¡ ¾µ ¼ö ¾ø´Ù. MAX(popu)°¡ µµ´ëü ¾î¶² ±×·ì¿¡ ´ëÇÑ ÃÖ´ë°ªÀÎÁö ºÐ¸íÇÏÁö ¾Ê´Ù.

À§ µÎ ¹®ÀåÀº Àΰ£ÀûÀ¸·Î´Â °¡´ÉÇÒ °Íó·³ º¸ÀÌÁö¸¸ ±â°èÀûÀ¸·Î´Â ¸ðÈ£ÇÔÀÌ ÀÖ¾î µÑ ´Ù µ¿ÀÛÇÏÁö ¾Ê´Â´Ù. ±â°è°¡ ÀÌ ¸í·ÉÀ» ¾Ë¾Æ µéÀ¸·Á¸é ¹®¹ýÀûÀ¸·Î °¡´ÉÇÑ Áú¹®À» ¼ø¼­´ë·Î ÇØ¾ß ÇÑ´Ù. ¸ÕÀú ÃÖ´ë Àα¸¼ö¸¦ ±¸ÇØ º¸ÀÚ.

 

SELECT MAX(popu) FROM tCity;

 

Àüü µµ½ÃÀÇ Àα¸Áß °¡Àå Å« °ªÀ» Á¶»çÇß´Ù. µµ½Ã ¸ñ·Ï Àüü¸¦ ÇϳªÀÇ ±×·ìÀ¸·Î º¸°í ±× Áß ÃÖ´ë°ªÀ» ã¾ÒÀ¸´Ï ¹®¹ýÀûÀ¸·Î Ÿ´çÇϸç 974ÀÇ °á°ú¸¦ ¸®ÅÏÇÑ´Ù. ÃÖ´ë Àα¸¼ö¸¦ ¾Ë¾ÒÀ¸´Ï ÀÌÁ¦ ÀÌ Àα¸¼ö¸¦ °¡Áø µµ½Ã¸¦ ãÀ¸¸é µÈ´Ù.

 

SELECT name FROM tCity WHERE popu = 974;

 

°á°ú´Â '¼­¿ï'ÀÌ´Ù. ÃÖ´ë Àα¸¼ö¸¦ Á¶»çÇÏ°í ÀÌ ¼ö·ÎºÎÅÍ µµ½ÃÀÇ À̸§À» ±¸ÇØ¾ß ÇÏ´Ï µÎ ¹øÀÇ Äõ¸®°¡ ÇÊ¿äÇÏ´Ù. ¾î·µç ¸ñÀûÀº ´Þ¼ºÇßÁö¸¸ »ç¶÷ÀÌ Ã¹ ¹ø° Äõ¸®ÀÇ °á°ú¸¦ È®ÀÎÇÑ ÈÄ µÎ ¹ø° Äõ¸®ÀÇ Á¶°Ç¹®¿¡ Á÷Á¢ ±âÀÔÇÏ´Â ½ÄÀ̶ó ºÒÆíÇÏ´Ù. µÎ °³ÀÇ Äõ¸®¸¦ Çϳª·Î ¹­¾î ½ÇÇàÇÒ ¼ö ÀÖ´Ù¸é ÀÌ ¹®Á¦¸¦ ½±°Ô Ç® ¼ö ÀÖ´Ù.

ÀÌ·² ¶§ ¾²´Â °ÍÀÌ ¼­ºêÄõ¸®ÀÌ´Ù. ¼­ºêÄõ¸®´Â ´Ù¸¥ Äõ¸®¹®¾È¿¡ ³»ÀåµÇ¾î ÀÖ´Â SELECT ¹®ÀÌ¸ç ¿¬¼ÓÀûÀ¸·Î ½ÇÇàÇÒ Äõ¸®¸¦ Çϳª·Î ÇÕÄ£´Ù. À̶§ ¼­ºêÄõ¸®¸¦ °¨½Î´Â Àüü Äõ¸®¸¦ ¿ÜºÎÄõ¸®¶ó°í ºÎ¸¥´Ù. ¿ÜºÎÄõ¸®¿Í ±¸ºÐÇÏ°í ½ÇÇà ¼ø¼­¸¦ ¸íÈ®È÷ ÁöÁ¤Çϱâ À§ÇØ ¼­ºêÄõ¸®¸¦ °ýÈ£·Î °¨½Ñ´Ù. ¼­ºêÄõ¸®·Î ÃÖ´ë Àα¸¼ö¸¦ °¡Áø µµ½Ã¸íÀ» ±¸ÇØ º¸ÀÚ.

 

SELECT name FROM tCity WHERE popu = (SELECT MAX(popu) FROM tCity);

 

Çѹ濡 '¼­¿ï'À» ±¸ÇÑ´Ù. DB ¿£ÁøÀº °ýÈ£ ¾ÈÀÇ ¼­ºêÄõ¸®¸¦ ¸ÕÀú ½ÇÇàÇÏ¿© ÃÖ´ë Àα¸¼ö¸¦ ±¸ÇÑ´Ù. ±×¸®°í ¼­ºêÄõ¸®¸¦ Æ÷ÇÔÇÏ°í ÀÖ´Â ¿ÜºÎÄõ¸®¸¦ ½ÇÇàÇÏ¿© popu°¡ ¼­ºêÄõ¸®°¡ ±¸ÇÑ ÃÖ´ë Àα¸¼ö¿Í °°Àº µµ½Ã¸¦ Á¶»çÇÏ¿© Ãâ·ÂÇÑ´Ù. ¸¶Ä¡ ÀÏ¹Ý ¾ð¾î¿¡¼­ ÇÔ¼ö È£ÃâÀ» ÁßøÇÏ´Â °Í°ú °°´Ù.

À§ ¹®ÀåÀÌ ¼­ºêÄõ¸®ÀÇ °¡Àå ÀϹÝÀûÀÌ°í ÀüÇüÀûÀÎ »ç¿ë¿¹ÀÌ´Ù. ÃÖ´ë Àα¸¼ö´Â? ±× µµ½Ã´Â? µÎ °³ÀÇ Áú¹®À» Çϳª·Î ÇÕÃÄ ÇѲ¨¹ø¿¡ ½ÇÇàÇÑ´Ù°í »ý°¢ÇÏ¸é ½±´Ù. ¿¬½À»ï¾Æ ºñ½ÁÇÑ À¯ÇüÀÇ ¹®Á¦¸¦ Çϳª ´õ Ç®¾î º¸ÀÚ. »óÇ° ¸ñ·ÏÀÎ tItem¿¡¼­ Àç°í·®ÀÌ °¡Àå ¸¹Àº »óÇ°À» Á¶»çÇØ º¸ÀÚ. ¸ÕÀú ÃÖ´ë Àç°í·®À» ã´Â´Ù.

 

SELECT MAX(num) FROM tItem;

 

tItem Å×À̺íÀÇ num Çʵå Áß ÃÖ´ë°ªÀº 80ÀÓÀ» ¾Ë ¼ö ÀÖ´Ù. ÀÌÁ¦ ÀÌ ÃÖ´ë·®À¸·ÎºÎÅÍ num Çʵ尡 80°³ÀÎ »óÇ°À» Á¶»çÇÑ´Ù.

 

SELECT item FROM tItem WHERE num = 80;

 

°á°ú´Â û¹ÙÁöÀÌ´Ù. µÎ ¸í·ÉÀ» Çϳª·Î ÇÕÃÄ º¸ÀÚ. ÃÖ´ë Àç°í·®ÀÎ 80 ÀÚ¸®¿¡ ÀÌ °ªÀ» Á¶»çÇÏ´Â ¼­ºêÄõ¸®¸¦ ÀÛ¼ºÇÏ¿© µÎ Äõ¸®¸¦ Çϳª·Î ÇÕÄ£´Ù. DB ¿£ÁøÀº µÎ ¸í·ÉÀ» ¼ø¼­´ë·Î ½ÇÇàÇÏ¿© ÇϳªÀÇ °á°ú°ª û¹ÙÁö¸¦ Ãâ·ÂÇÑ´Ù.

 

SELECT item FROM tItem WHERE num = (SELECT MAX(num) FROM tItem);

 

´ÜÀÏÇà ¼­ºêÄõ¸®´Â ÇϳªÀÇ °á°ú¸¸ ¸®ÅÏÇϸç ÁÖ·Î WHERE, HAVING µîÀÇ Á¶°ÇÀý¿¡ »ç¿ëÇÑ´Ù. º¹ÇÕ Áú¹®ÀÇ ¾ÕÂÊ Áú¹®¿¡ ÇØ´çÇÏ´Â °ªÀ» ¼­ºêÄõ¸®·Î ¸ÕÀú Á¶»çÇØ ³õ°í ¿ÜºÎÄõ¸®¿¡¼­ ±× °á°ú°ªÀ» »ç¿ëÇÏ´Â ½ÄÀÌ´Ù.

 

¿¬½À ¹®Á¦

1.tStaff¿¡¼­ ¼ºÃëµµ°¡ Á¦ÀÏ ³ôÀº Á÷¿øÀ» Á¶»çÇ϶ó.

2.tStaff¿¡¼­ Æò±Õ ÀÌ»óÀÇ ¿ù±ÞÀ» ¹Þ´Â Á÷¿ø ¸ñ·ÏÀ» Ãâ·ÂÇ϶ó.

3.tEmployee¿Í tProject¿¡¼­ ³ëÁ¶ Çù»ó°ÇÀ» ¸ÃÀº Á÷¿øÀÇ À̸§°ú ¿ù±ÞÀ» ±¸Ç϶ó.

4.tMember¿¡¼­ ³ªÀÌ°¡ °¡Àå ¸¹Àº ȸ¿øÀÇ À̸§°ú ÁÖ¼Ò¸¦ Á¶»çÇ϶ó.

2.¼­ºêÄõ¸® Áßø

¾Õ¿¡¼­ ½Ç½ÀÇÑ µÎ °³ÀÇ ¼­ºêÄõ¸®´Â °°Àº Å×ÀÌºí ³»ÀÇ °ªÀ» Á¶»çÇÏ´Â ´Ü¼øÇÑ ÇüÅ¿´´Ù. ¼­ºêÄõ¸®´Â µ¶¸³ÀûÀÎ ÇϳªÀÇ ¸í·ÉÀ̱⠶§¹®¿¡ ¿ÜºÎÄõ¸®¿Í´Â ´Ù¸¥ Å×À̺íÀ» ÀÐÀ» ¼öµµ ÀÖ´Ù. ¾îÂ÷ÇÇ ¼øÂ÷ÀûÀ¸·Î ½ÇÇàµÇ¹Ç·Î µÎ Äõ¸®¹®ÀÇ FROM Àý¿¡ °¢°¢ ´Ù¸¥ Å×À̺íÀ» ÁöÁ¤Çصµ »ó°ü¾ø´Ù.

±×·¡¼­ ´õ º¹ÀâÇÑ ÇüÅÂÀÇ Áú¹®µµ °¡´ÉÇÏ´Ù. À̹ø¿¡´Â û¹ÙÁöÀÇ ¹è¼Ûºñ´Â ¾ó¸¶ÀÎÁö Á¶»çÇØ º¸ÀÚ. û¹ÙÁö´Â »óÇ° Å×ÀÌºí¿¡ ÀÖÁö¸¸ ¹è¼Ûºñ´Â À¯Çü Å×ÀÌºí¿¡ ÀÖ¾î µÎ Å×À̺íÀ» Àоî¾ß ÇÑ´Ù. ¸ÕÀú tItem Å×ÀÌºí¿¡¼­ û¹ÙÁö´Â ¾î¶² À¯ÇüÀÇ »óÇ°ÀÎÁö Á¶»çÇÑ´Ù.

 

SELECT category FROM tItem WHERE item= 'û¹ÙÁö';

 

û¹ÙÁö´Â 'ÆмÇ' À¯ÇüÀÌ´Ù. ´ÙÀ½Àº ÆÐ¼Ç À¯ÇüÀÇ ¹è¼Ûºñ¸¦ Á¶»çÇÑ´Ù. tCategory Å×ÀÌºí¿¡¼­ ¾Õ Äõ¸®ÀÇ °á°ú·Î ³ª¿Â 'ÆмÇ' À¯ÇüÀÇ ¹è¼Ûºñ¸¦ Á¶»çÇÑ´Ù.

 

SELECT delivery FROM tCategory WHERE category = 'ÆмÇ';

 

2000¿øÀÌ´Ù. ¿øÇÏ´Â ´äÀ» ±¸ÇÏ´Â Äõ¸®¹®À» ´Ù ÀÛ¼ºÇßÀ¸¹Ç·Î ÀÌÁ¦ µÑÀ» Çϳª·Î ÇÕÄ£´Ù. WHERE ÀýÀÇ 'ÆмÇ' ÀÚ¸®¿¡ »ó¼ö ´ë½Å 'ÆмÇ'À̶ó´Â °á°ú¸¦ ¸¸µé¾î ³»´Â ¼­ºêÄõ¸®¸¦ ÀÛ¼ºÇÏ°í °ýÈ£·Î µÑ·¯ ½Ñ´Ù.

 

SELECT delivery FROM tCategory WHERE category = (SELECT category FROM tItem

WHERE item = 'û¹ÙÁö');

 

Á» Àͼ÷ÇØÁö¸é ´Ü°è¸¦ °ÅÄ¡Áö ¾Ê°íµµ ÀÌ Áú¹®À» ÇÑ ¹ø¿¡ ÇÒ ¼ö ÀÖ´Ù. DB ¿£ÁøÀÌ ¼­ºêÄõ¸®¸¦ ¸ÕÀú ½ÇÇàÇÏ°í ±× °á°ú¸¦ ¿ÜºÎÄõ¸®¿¡ ¾²µíÀÌ ¿ì¸®ÀÇ »ç°í È帧µµ ÀÌ ¼ø¼­´ë·Î ¸í·É¹®À» Çϳª¾¿ ÀÛ¼ºÇÏ¸é µÈ´Ù. ÀÌ Áú¹®À» ¸»·Î Ç¥ÇöÇØ º¸¸é 'û¹ÙÁöÀÇ À¯ÇüÀ» Á¶»çÇÏ°í ±× À¯ÇüÀÇ ¹è¼Ûºñ¸¦ Ãâ·ÂÇ϶ó'ÀÌ´Ù.

¼­ºêÄõ¸®ÀÇ Áßø Ƚ¼ö¿¡´Â Á¦¾àÀÌ ¾ø¾î ¼­ºêÄõ¸®³»¿¡ ¶Ç ´Ù¸¥ ¼­ºêÄõ¸®¸¦ Æ÷ÇÔÇÒ ¼ö ÀÖ´Ù. ¼­ºêÄõ¸®ÀÇ ÁßøÀ» »ç¿ëÇÏ¸é ¾ó¸¶µçÁö º¹ÀâÇÑ Áú¹®µµ ÇÒ ¼ö Àִµ¥ ´Ü°èº°·Î '7¸¸¿øÂ¥¸® »óÇ°À» ±¸ÀÔÇÑ »ç¶÷ÀÇ ³ªÀÌ'¸¦ ±¸ÇØ º¸ÀÚ. ¸ÕÀú 7¸¸¿øÂ¥¸® »óÇ°ÀÌ ¹«¾ùÀÎÁö Á¶»çÇÑ´Ù.

 

SELECT item FROM tItem WHERE price = 70000;

 

»óÇ° Á¤º¸´Â tItem Å×ÀÌºí¿¡ ÀÖ´Ù. ÀÌ Å×ÀÌºí¿¡¼­ 70000¿øÂ¥¸® »óÇ°À» Á¶»çÇØ º¸¸é ÀüÀÚ´ã¹èÀÌ´Ù. ´ÙÀ½Àº ÀÌ »óÇ°À» ±¸ÀÔÇÑ »ç¶÷ÀÌ ´©±¸ÀÎÁö Á¶»çÇÑ´Ù. ±¸ÀÔ ³»¿ªÀº tOrder Å×ÀÌºí¿¡ ÀÖ´Ù.

 

SELECT member FROM tOrder WHERE item =

(SELECT item FROM tItem WHERE price = 70000);

 

¾Õ ´Ü°è¿¡¼­ ±¸ÇÑ »óÇ°¸íÀ» tOrder Å×À̺íÀÇ item Çʵå¿Í ºñ±³ÇÏ¿© member Çʵ带 ÀÐÀ¸¸é ¹æÀÚ°¡ ±¸ÀÔÇßÀ½À» ¾Ë ¼ö ÀÖ´Ù. ¸¶Áö¸·À¸·Î ¹æÀÚÀÇ ³ªÀ̸¦ tMember¿¡¼­ Àд´Ù.

 

SELECT age FROM tMember WHERE member =

(SELECT member FROM tOrder WHERE item =

(SELECT item FROM tItem WHERE price = 70000));

 

28¼¼·Î Á¶»çµÈ´Ù. ´ÙÇàÈ÷ ¹Ì¼º³âÀÚ´Â ¾Æ´Ï¾î¼­ ¼ºÀοëÇ°À» ±¸ÀÔÇÒ ¼ö ÀÖ´Ù. °¡Àå ¾ÈÂÊ¿¡ ÀÖ´Â Äõ¸®ºÎÅÍ ¼ø¼­´ë·Î ½ÇÇàÇÏ¿© ÃÖÁ¾ÀûÀ¸·Î ¿øÇÏ´Â °ªÀ» ±¸ÇØ Ãâ·ÂÇÑ´Ù.

ÀÌ Áú¹®¿¡ Äõ¸®°¡ ¼¼ °³¾¿À̳ª ÇÊ¿äÇÑ ÀÌÀ¯´Â »óÇ°, ÁÖ¹®, ȸ¿ø¿¡ ´ëÇÑ Á¤º¸°¡ ¼¼ °³ÀÇ Å×ÀÌºí¿¡ Èð¾îÁ® Àֱ⠶§¹®ÀÌ´Ù. °¢ Å×À̺íÀ» ´ÙÀ½ ¼ø¼­´ë·Î °Ë»öÇÑ´Ù. ÃÖÃÊ ¾Ë°í ÀÖ´ø Á¤º¸´Â 70000¿øÀ̶ó´Â °¡°Ý»ÓÀε¥ ÀÌ Á¤º¸·ÎºÎÅÍ »óÇ°À» ã°í, »óÇ°À¸·Î »ç¶÷À» ã°í, »ç¶÷À¸·ÎºÎÅÍ ³ªÀ̸¦ Â÷·Ê´ë·Î ã¾Ò´Ù.

ÀÌ ¿¹Á¦´Â Å×À̺íÀÇ ³»¿ëÀ» »·È÷ ¾Ë°í ÀÖ¾î º°´Ù¸¥ ¿¡·¯ 󸮴 ÇÏÁö ¾Ê¾Ò´Ù. ¸¸¾à 70000¿øÂ¥¸® »óÇ°ÀÌ ¾ø´Ù°Å³ª ±¸ÀÔÇÑ »ç¶÷ÀÌ ¾øÀ¸¸é °á°ú¼ÂÀº ¾ø´Ù. ¹Ý´ë·Î »óÇ°ÀÌ ¿©·¯ °³À̰ųª ±¸ÀÔÇÑ »ç¶÷ÀÌ µÑ ÀÌ»óÀ̶ó¸é ¿¡·¯ 󸮵Ǵµ¥ À̶§´Â TOP 1À» ³Ö¾î ù ±¸ÀÔÀÚ¸¦ ãÀ¸¸é µÈ´Ù.

¿¬½À ¹®Á¦

5.´ëÃ߸¦ ±¸ÀÔÇÑ È¸¿øÀÇ À̸§°ú ÀÌ È¸¿øÀÇ ¿¹Ä¡±ÝÀ» ±¸Ç϶ó.

6.ÃáÇâÀÌ°¡ ±¸ÀÔÇÑ »óÇ°ÀÇ °¡°ÝÀ» Á¶»çÇ϶ó.

3.´ÙÁßÇà ¼­ºêÄõ¸®

¼­ºêÄõ¸®ÀÇ °á°ú°¡ Çϳª»ÓÀÎ À¯ÇüÀ» ´ÜÀÏÇà ¼­ºêÄõ¸®¶ó°í ÇÑ´Ù. ´ÜÀÏ°ªÀ̹ǷΠÁ¶°ÇÀý¿¡¼­ =, <, > µîÀÇ ºñ±³ ¿¬»êÀÚ¿Í ÇÔ²² »ç¿ëÇÒ ¼ö ÀÖ´Ù. ºñ±³ ¿¬»êÀÚ´Â Çʵå¿Í °ªÀ» ºñ±³ÇÏ´Â °ÍÀ̾ ¿ìº¯ÀÌ ¹Ýµå½Ã ÇϳªÀÇ È®Á¤µÈ °ªÀ̾î¾ß ÇÑ´Ù.

ÀÌ¿¡ ºñÇØ ¿©·¯ °³ÀÇ °á°ú¸¦ ¸®ÅÏÇÏ´Â °ÍÀ» ´ÙÁßÇà ¼­ºêÄõ¸®¶ó°í ÇÑ´Ù. ´ÜÀÏ°ªÀÌ ¾Æ´Ñ ¸ñ·ÏÀ» ¸®ÅÏÇϱ⠶§¹®¿¡ °ª³¢¸® ºñ±³ÇÏ´Â = ¿¬»êÀÚ¿Í ÇÔ²² »ç¿ëÇÒ ¼ö ¾ø´Ù. ´ÙÀ½ Äõ¸®¹®Àº Çâ´ÜÀÌ°¡ ±¸ÀÔÇÑ »óÇ°ÀÇ °¡°ÝÀ» Á¶»çÇϴµ¥ ¹®¹ý¿¡´Â ÀÌ»óÀÌ ¾øÁö¸¸ µ¥ÀÌÅÍ°¡ Á¶°Ç¿¡ ¸ÂÁö ¾Ê¾Æ ¿¡·¯ 󸮵ȴÙ.

 

SELECT price FROM tItem WHERE item =

(SELECT item FROM tOrder WHERE member = 'Çâ´Ü');

 

¼­ºêÄõ¸®´Â ±¸ÀÔ ¸ñ·ÏÀÎ tOrder Å×ÀÌºí¿¡¼­ Çâ´ÜÀÌ°¡ ¹» »ò´ÂÁö Á¶»çÇÑ´Ù. ¾ÈÂÊ ¼­ºêÄõ¸®¸¸ ½ÇÇàÇØ º¸¸é Çâ´ÜÀÌ°¡ »ê °ÍÀº ´ëÃß¿Í »ç°ú 2°³ÀÌ´Ù. = ¿¬»êÀÚ´Â Çʵ尪À» µÎ °³ÀÇ °á°ú¿Í ºñ±³ÇÒ ¼ö ¾ø¾î ´ÙÀ½ ¿¡·¯¸¦ Ãâ·ÂÇÑ´Ù.

 

ORA-01427: ´ÜÀÏ Çà ÇÏÀ§ ÁúÀÇ¿¡ 2°³ ÀÌ»óÀÇ ÇàÀÌ ¸®ÅϵǾú½À´Ï´Ù.

 

= ¿¬»êÀÚ·Î ºñ±³ÇÏ·Á¸é Á¶°ÇÀýÀÇ Äõ¸®¹®Àº ¹Ýµå½Ã ÇϳªÀÇ ´ÜÀÏ°ªÀ» ¸®ÅÏÇØ¾ß ÇÑ´Ù. ²À Á¶»çÇÏ·Á¸é °á°ú¼ÂÁß ÇϳªÀÇ °ª¸¸ Á¶»çÇÏ¿© ºñ±³ÇÏ¸é µÈ´Ù.

 

SELECT price FROM tItem WHERE item =

(SELECT item FROM tOrder WHERE member = 'Çâ´Ü'

ORDER BY item OFFSET 0 ROWS FETCH NEXT 1 ROWS ONLY);

 

±¸ÀÔÇÑ »óÇ° Áß ÃÖÃÊ ÇϳªÀÇ »óÇ°¸¸ ¸®ÅÏÇϸé = ¿¬»êÀÚ·Î ºñ±³ÇÒ ¼ö ÀÖ´Ù. ±×·¯³ª ÀÌ°ÍÀÌ °ú¿¬ ¿øÇÏ´Â °á°ú¿´´ÂÁö´Â Àß »ý°¢ÇØ ºÁ¾ß ÇÑ´Ù. ¾ÖÃÊÀÇ Áú¹®´ë·Î Çâ´ÜÀÌ°¡ ±¸ÀÔÇÑ ¸ðµç »óÇ°ÀÇ °¡°ÝÀ» ¾Ë°í ½Í´Ù¸é = ¿¬»êÀÚ·Î ºñ±³Çؼ­´Â ¾ÈµÇ¸ç IN ¿¬»êÀÚ¸¦ »ç¿ëÇØ¾ß ÇÑ´Ù.

 

SELECT item, price FROM tItem WHERE item IN

(SELECT item FROM tOrder WHERE member = 'Çâ´Ü');

 

INÀº = °ú ´Þ¸® ¿©·¯ °³ÀÇ °ª°ú ºñ±³ÇÑ´Ù. ¼­ºêÄõ¸®°¡ µÎ °³ ÀÌ»óÀÇ °ªÀ» ¸®ÅÏÇÏ¸é °á°ú¼ÂÀ» °ýÈ£ ¾È¿¡ ³ª¿­Çϸç IN ¿¬»êÀÚ´Â ÀÌ °ªÀ» ¼ø¼­´ë·Î ºñ±³ÇÑ´Ù. ¼­ºêÄõ¸®±îÁö ½ÇÇàÇÑ Á÷ÈÄÀÇ ¿ÜºÎÄõ¸®´Â ´ÙÀ½°ú °°´Ù. 2°³ÀÇ »óÇ°¿¡ ´ëÇØ À̸§°ú °¡°ÝÀ» °°ÀÌ Ãâ·ÂÇÑ´Ù.

 

SELECT item, price FROM tItem WHERE item IN ('´ëÃß', '»ç°ú');

´ÜÀÏÇàÀ» ¸®ÅÏÇÏ´Â ¼­ºêÄõ¸®´Â = ¿¬»êÀÚ¿Í ºñ±³ÇÏ°í ´ÙÁßÇàÀ» ¸®ÅÏÇÏ´Â ¼­ºêÄõ¸®´Â IN ¿¬»êÀÚ¿Í ºñ±³ÇÑ´Ù. ¹°·Ð IN ¿¬»êÀÚ¸¦ ¾²¸é Çϳªµç, ¿©·¯ °³ÀÌµç ºñ±³ÇÒ ¼ö ÀÖÁö¸¸ Áý°è ÇÔ¼öÀÇ °á°ú´Â Ç×»ó Çϳª¿©¼­ À̶§´Â = ¿¬»êÀÚ¸¦ ¾²´Â °ÍÀÌ ´õ ½±´Ù. °á°ú°ªÀÌ ¾Æ¿¹ ¾ø´Â °ÍÀº ¾î¶² ¿¬»êÀÚ·Î ºñ±³Çصµ »ó°ü¾ø´Ù.

 

SELECT price FROM tItem WHERE item = (SELECT item FROM tOrder WHERE member = 'À̵µ·É');

 

À̵µ·ÉÀÌ ±¸ÀÔÇÑ »óÇ°ÀÇ °¡°ÝÀ» Á¶»çÇÏ´Â Äõ¸®Àε¥ À̵µ·ÉÀº ¾Æ¹«°Íµµ ±¸ÀÔÇÏÁö ¾Ê¾Ò´Ù. °á°ú°¡ ¾øÀ¸¸é NULLÀ» ¸®ÅÏÇϸç Á¶°ÇÀý¿¡¼­ Çʵå¿Í NULLÀ» ºñ±³ÇÏ´Â °ÍÀº ¹®¹ýÀûÀ¸·Î °¡´ÉÇÏ´Ù. ¾Æ¹« °á°ú¼Âµµ Ãâ·ÂÇÏÁö ¾ÊÀ» »Ó ¿¡·¯´Â ¾Æ´Ï´Ù.

4.´ÙÁß¿­ ¼­ºêÄõ¸®

´ÜÀÏÇà, ´ÙÁßÇà ¼­ºêÄõ¸®´Â °á°ú¼ÂÀÇ Ä÷³ÀÌ Çϳª¹Û¿¡ ¾øÀ¸¸ç ±×·¡¼­ ƯÁ¤°ª°ú ºñ±³ÇÒ ¼ö ÀÖ´Ù. ÀÌ¿¡ ºñÇØ ´ÙÁß¿­ ¼­ºêÄõ¸®´Â °á°ú¼ÂÀÇ Ä÷³ÀÌ ¿©·¯ °³À̸ç ÇѲ¨¹ø¿¡ ¿©·¯ °ª°ú ºñ±³ÇÑ´Ù. ¿À¶óŬ°ú MariaDB´Â ´ÙÁß¿­ ¼­ºêÄõ¸®¸¦ Àß Áö¿øÇÏÁö¸¸ SQL Server´Â ¾ÆÁ÷ Áö¿øÇÏÁö ¾Ê´Â´Ù.

ÀÌ·± ¼­ºêÄõ¸®°¡ ¿Ö ÇÊ¿äÇÑÁö ´Ü°èº°·Î ¹®Á¦¸¦ Ç®¾î º¸¸ç ¿¬±¸ÇØ º¸ÀÚ. À±ºÀ±æ°ú °°Àº ºÎ¼­¿¡ ±Ù¹«ÇÏ´Â °°Àº ¼ºº°ÀÇ Á÷¿ø ¸ñ·ÏÀ» Á¶»çÇØ º¸ÀÚ. ÀÌ ¹®Á¦¸¦ Ç®·Á¸é ¸ÕÀú À±ºÀ±æÀÌ ¾î´À ºÎ¼­¿¡ ±Ù¹«ÇÏ°í ¼ºº°ÀÌ ¹«¾ùÀÎÁö Á¶»çÇØ¾ß ÇÏ¸ç ±× °á°ú·ÎºÎÅÍ Á¶°Ç¿¡ ¸Â´Â Á÷¿øÀ» ãÀ¸¸é µÈ´Ù.

 

SELECT depart, gender FROM tStaff WHERE name = 'À±ºÀ±æ';

SELECT * FROM tStaff WHERE depart = '¿µ¾÷ºÎ' AND gender = '³²';

Á¶»çÇØ º¸´Ï À±ºÀ±æÀº ¿µ¾÷ºÎ¿¡ ±Ù¹«ÇÏ´Â ³²ÀÚ Á÷¿øÀÌ´Ù. ÀÌ Á¶°Ç¿¡ ¸Â´Â Á÷¿ø ¸ñ·ÏÀ» Á¶»çÇؼ­ Ãâ·ÂÇÏ¸é µÈ´Ù. À±ºÀ±æ ÀڽűîÁö Æ÷ÇÔÇÏ¿© 4¸íÀÇ Á÷¿øÀÌ ÀÖ´Ù. ±²ÀåÈ÷ ½¬¿î ¹®Á¦ÀÌÁö¸¸ ÀÛ¾÷À» µÎ ´Ü°è·Î ³ª´©¾î »ç¶÷ÀÌ °á°ú¸¦ È®ÀÎÇÑ ÈÄ ´Ù½Ã ¸í·ÉÀ» ³»·Á¾ß ÇÏ´Â ºÒÆíÇÔÀÌ ÀÖ´Ù.

ÀÓÀÇÀÇ Á÷¿ø¿¡ ´ëÇØ ¶È°°Àº Á¶»ç¸¦ ÇÏ·Á¸é µÎ ¹ø ¼ÕÀÌ °¡¾ß ÇÏ´Ï ¹ø°Å·Ó´Ù. ÀÌ·² ¶§ Á¶»ç ÈÄ Á¶°Ç¿¡ ¸Â´Â ¸ñ·Ï Ãâ·Â±îÁö ÇÑ ¹ø¿¡ ¼öÇàÇÏ´Â ¼­ºêÄõ¸®°¡ ÇÊ¿äÇÏ´Ù. ´ÙÀ½ ¼­ºêÄõ¸®ÀÇ Á÷¿ø¸íÀ» ¹Ù²Ù¸é °°Àº ºÎ¼­, °°Àº ¼ºº°ÀÇ Á÷¿ø ¸ñ·ÏÀ» ¹Ù·Î Á¶»çÇÒ ¼ö ÀÖ´Ù. À̹ø¿¡´Â ¾ÈÁß±ÙÀÇ µ¿·á¸¦ Á¶»çÇØ º¸ÀÚ.

 

SELECT * FROM tStaff WHERE depart =

(SELECT depart FROM tStaff WHERE name = '¾ÈÁß±Ù')

AND gender = (SELECT gender FROM tStaff WHERE name = '¾ÈÁß±Ù');

Á÷°üÀûÀÌ°í ½±Áö¸¸ ºÎ¼­¿Í ¼ºº°À» °¢°¢ÀÇ ¼­ºêÄõ¸®·Î °³º° Á¶»çÇÏ´Ù º¸´Ï ÃÑ 3¹øÀÇ Äõ¸®¸¦ ¼öÇàÇÑ´Ù. ´ÙÁß¿­ ¼­ºêÄõ¸®¸¦ »ç¿ëÇÏ¸é µÎ °³ÀÇ Ä÷³À» ¸®ÅÏÇÑ ÈÄ ÇѲ¨¹ø¿¡ ºñ±³ÇÑ´Ù.

 

SELECT * FROM tStaff WHERE (depart, gender) =

(SELECT depart, gender FROM tStaff WHERE name = '¾ÈÁß±Ù');

 

WHERE Àý¿¡ ºñ±³ ´ë»ó Çʵ带 °ýÈ£ ¾È¿¡ (depart, gender)·Î ÀûÀ¸¸é ¼­ºêÄõ¸®ÀÇ Ä÷³°ú 1:1·Î ºñ±³ÇÏ¿© µÎ Çʵ尡 ¸ðµÎ ÀÏÄ¡ÇÏ´Â ·¹Äڵ带 °Ë»öÇÑ´Ù. ¿©·¯ Çʵ带 ÇѲ¨¹ø¿¡ ºñ±³ÇÒ ¼ö ÀÖ¾î Æí¸®ÇÏ´Ù. ´Ü, ÀÏ°ý ºñ±³°¡ ¼º¸³ÇÏ·Á¸é ºñ±³ ´ë»ó°ú ¼­ºêÄõ¸®ÀÇ Ä÷³ °³¼ö´Â ¹Ýµå½Ã ÀÏÄ¡ÇØ¾ß ÇÑ´Ù.

´ÙÀ½Àº ´õ º¹ÀâÇÑ ¹®Á¦¸¦ Ç®¾îº¸ÀÚ. ¼­ºêÄõ¸®°¡ ´ÙÁß¿­À̸鼭 ´ÙÁßÇàÀÎ °á°ú¼ÂÀ» ¸®ÅÏÇÏ¸é º¹¼ö ·¹ÄÚµåÀÇ º¹¼ö Çʵ带 ÇѲ¨¹ø¿¡ ºñ±³ÇÒ ¼ö ÀÖ´Ù. ´ÙÀ½ Äõ¸®¹®Àº ºÎ¼­º° ÃÖ°í ¿ù±ÞÀÚÀÇ ¸ñ·ÏÀ» Á¶»çÇÑ´Ù. ¿©·¯ °³ÀÇ ºÎ¼­°¡ ÀÖ°í °¢ ºÎ¼­¸í°ú ÃÖ°í ¿ù±ÞÀ» ºñ±³ÇØ¾ß ÇÑ´Ù.

 

SELECT * FROM tStaff WHERE (depart, salary) IN

(SELECT depart, MAX(salary) FROM tStaff GROUP BY depart);

 

¾ÈÂÊÀÇ ¼­ºêÄõ¸®´Â ºÎ¼­º°·Î ±×·ìÇÎÇÏ¿© ºÎ¼­¸í°ú ÃÖ°í ¿ù±ÞÀ» ±¸ÇÑ´Ù. ºÎ¼­º°·Î µÎ °³ÀÇ Ä÷³ÀÌ ÀÖ°í ±×·± ºÎ¼­°¡ ¼¼ °³ ÀÖÀ¸´Ï ´ÙÁß¿­ ´ÙÁßÇà °á°ú¼ÂÀÌ´Ù. °á±¹ ÇϳªÀÇ Å×À̺íÀÎ ¼ÀÀÌ´Ù.

ÀÌÁ¦ ÀÌ Á¶°Ç¿¡ ¸Â´Â Á÷¿øÀÇ »ó¼¼ Á¤º¸¸¦ Á¶»çÇØ º¸ÀÚ. ±×·ìÇÎÇÒ ¶§´Â ±âÁØ Çʵ峪 Áý°è ÇÔ¼ö¸¸ ¾µ ¼ö ÀÖ¾î ºÎ¼­º° ÃÖ°í ¿ù±Þ±îÁö¸¸ Á¶»çÇÒ ¼ö ÀÖ°í ±× Á÷¿øÀÌ ´©±¸ÀÎÁö´Â ¾Ë ¼ö ¾ø´Ù. ±×·¯³ª ¿ÜºÎÄõ¸®·Î ÇÑ ¹ø °¨½Î ºÎ¼­¸í°ú ÃÖ°í ¿ù±ÞÀ» Á¶°ÇÀ¸·Î »ç¿ëÇÏ¸é ¹¹µçÁö Á¶»çÇÒ ¼ö ÀÖ´Ù.

Ãѹ«ºÎ¿¡¼­ ¿ù±Þ 420¸¸¿øÀ» ¹Þ´Â »ç¶÷ÀÌ ´©±¸ÀÎÁö WHERE (depart, salary) ¸¦ ¼­ºêÄõ¸®ÀÇ °á°ú¼Â°ú ºñ±³ÇÏ¸é µÈ´Ù. °á°ú¼ÂÀÌ ´ÙÁßÇàÀ̹ǷΠ¹Ýµå½Ã IN ¿¬»êÀÚ·Î ºñ±³ÇØ¾ß ÇÑ´Ù. ´Ü ÇÑ ÁÙÀÇ ¸í·ÉÀ¸·Î ºÎ¼­º° ÃÖ°í ¿ù±ÞÀÚÀÇ ½Å»ó Á¤º¸±îÁö ´Ù Á¶»çÇÑ´Ù.

ÀÌ ¸í·ÉÀº ±×·ìÇÎÇÑ ÈÄ Áý°è ÇÔ¼ö¸¦ »ç¿ëÇϱ⠶§¹®¿¡ µ¿ÀϺμ­, µ¿Àϼºº° ¸ñ·ÏÀ» Á¶»çÇÏ´Â °Í°ú´Â ´Þ¸® µÎ °³ÀÇ ¼­ºêÄõ¸®·Î ºÐÇÒÇÒ ¼ö ¾ø´Ù. ±×·ìÇΰú Áý°è´Â ÇÑ ¹ø¿¡ ÇØ¾ß ÇÏ¸ç ±× °á°ú¸¦ ÀÏ°ý ºñ±³ÇØ¾ß ÇÏ´Ï ´ÙÁß¿­ ¼­ºêÄõ¸®°¡ ÇʼöÀûÀÌ´Ù.

´ÙÁß¿­ ¼­ºêÄõ¸®¸¦ Áö¿øÇÏÁö ¾Ê´Â SQL Server¿¡¼­´Â ÀÌ ¹®Á¦¸¦ Ç® ¼ö ¾øÀ»±î? ¹°·Ð ±×·¸Áö´Â ¾Ê´Ù. SQLÀº À¯¿¬¼ºÀÌ ³ô¾Æ ´ë¾ÈÀûÀÎ ¹æ¹ýÀÌ ¾ó¸¶µçÁö ÀÖ´Ù. ´ÙÀ½ µÎ °¡Áö ¹æ¹ýÀº ¾î¶² DBMS³ª Àß ½ÇÇàµÈ´Ù. ¾ÆÁ÷ ¹è¿ìÁö ¾ÊÀº ¹®¹ýÀε¥ ¿¹½ÀÇÏ´Â ¼ÀÄ¡°í ±¸°æ¸¸ ÇØ º¸ÀÚ.

 

SELECT * FROM tStaff S WHERE salary =

(SELECT MAX(salary) FROM tStaff WHERE depart = S.depart);

 

À§ ¹®ÀåÀº ¿¬°ü ¼­ºêÄõ¸®ÀÌ¸ç °¢ Á÷¿øÀÇ ¼Ò¼Ó ºÎ¼­¿¡¼­ ÃÖ°í ¿ù±ÞÀ» Á¶»çÇÏ¿© ÃÖ°í ¿ù±ÞÀÚÀÎ °æ¿ì¸¸ °ñ¶ó³½´Ù. ´ÙÀ½ ¹®ÀåÀº Á¶ÀÎ ¹®¹ýÀ» »ç¿ëÇÏ¸ç ´õ ÀϹÝÀûÀÎ ÇØ°áÃ¥ÀÌ´Ù.

 

SELECT T.* FROM tStaff T

INNER JOIN (SELECT depart, MAX(salary) ms FROM tStaff GROUP BY depart) M

ON T.depart = M.depart AND T.salary = M.ms;

 

±×·ìÇÎ Áý°è °á°ú¸¦ ÀζóÀκä·Î ¸¸µç ÈÄ ³»ºÎ Á¶ÀÎÇÏ¿© ÃÖ°í ¿ù±ÞÀÚ¸¦ °ñ¶ó³½´Ù. ¿¬°ü ¼­ºêÄõ¸®´Â ´ÙÀ½ Àý¿¡¼­, ÀζóÀκä´Â ÀÌ Àå µÞºÎºÐ¿¡¼­ ´Ù·ç¸ç Á¶ÀÎÀº ´ÙÀ½ Àå¿¡¼­ ´Ù·é´Ù. Áï, ÀÌ Ã¥À» ¼ø¼­´ë·Î Àд ÁßÀ̶ó¸é ¾ÆÁ÷±îÁö´Â ÀÌÇØÇÒ ¼ö ¾ø´Â ¸í·ÉÀÌ´Ù. ÀÌ·± º¹ÀâÇÑ ¸í·É ´ë½Å °£ÆíÇÏ°Ô ¾µ ¼ö ÀÖ´Â ¹®¹ýÀÌ ¹Ù·Î ´ÙÁß¿­ ¼­ºêÄõ¸®ÀÌ´Ù.

´ÙÁß¿­À» UPDATE ¹®¿¡µµ »ç¿ëÇÒ ¼ö ÀÖ´Ù. SET ÀýÀÇ °ýÈ£ ¾È¿¡ °»½Å ´ë»ó Çʵ带 ¾²°í ¼­ºêÄõ¸®¿¡¼­ °°Àº °³¼öÀÇ Ä÷³À» ¸®ÅÏÇϸé 1:1·Î ´ëÀÔÇÏ¿© ÇѲ¨¹ø¿¡ °»½ÅÇÑ´Ù. ´ÙÀ½ ¸í·ÉÀº ºÎ»êÀÇ ¸éÀû°ú Àα¸¸¦ ¼­¿ï·Î º¹»çÇÑ´Ù.

 

UPDATE tCity SET (area, popu) = (SELECT area, popu FROM tCity WHERE name='ºÎ»ê')

WHERE name = '¼­¿ï';

 

ÇÑ ¹ø¿¡ ¿©·¯ ÇʵåÀÇ °ªÀ» ÀÏ°ý °»½ÅÇÒ ¼ö ÀÖ¾î Æí¸®ÇÏ´Ù. ±×·¯³ª ÀÌ ¸í·ÉÀÌ Á¤»ó µ¿ÀÛÇÏ·Á¸é ¸î °¡Áö Á¶°ÇÀ» ¸ÂÃç¾ß ÇÑ´Ù. SET ÀýÀÇ Ä÷³¼ö¿Í ¼­ºêÄõ¸®°¡ ¸®ÅÏÇÏ´Â Ä÷³¼ö°¡ ÀÏÄ¡ÇØ¾ß ÇÏ¸ç ¼­ºêÄõ¸®´Â ¹Ýµå½Ã 1°³ÀÇ ·¹Äڵ常 ¸®ÅÏÇØ¾ß ÇÑ´Ù. 1:1 °»½ÅÀ» À§ÇØ »ó½ÄÀûÀÎ Á¶°ÇÀÌ´Ù.