SELECT¹®Àº µ¥ÀÌÅͺ£À̽º·ÎºÎÅÍ ÀúÀåµÇ¾î ÀÖ´Â µ¥ÀÌÅ͸¦ °Ë»öÇϴµ¥ »ç¿ëÇÕ´Ï´Ù.

[Syntax]

SELECT [DISTINCT] {*, column [alias], ...}
FROM table_name
[WHERE condition]
[ORDER BY {column, expression} [ASC | DESC]];

 ¡¤ DISTINCT : Áߺ¹µÇ´Â ÇàÀ» Á¦°ÅÇÏ´Â ¿É¼ÇÀÔ´Ï´Ù.
 ¡¤ *            :  Å×À̺íÀÇ ¸ðµç columnÀ» Ãâ·Â ÇÕ´Ï´Ù.
 ¡¤ alias       :  ÇØ´ç column¿¡ ´ëÇØ¼­ ´Ù¸¥ À̸§À» ºÎ¿©ÇÒ ¶§ »ç¿ëÇÕ´Ï´Ù.
 ¡¤ table_name :  ÁúÀÇ ´ë»ó Å×À̺í¸í
 ¡¤ WHERE    :   Á¶°ÇÀ» ¸¸Á·ÇÏ´Â Çàµé¸¸ °Ë»ö
 ¡¤ condition :  column, Ç¥Çö½Ä, »ó¼ö ¹× ºñ±³ ¿¬»êÀÚ
 ¡¤ ORDER BY :   ÁúÀÇ °á°ú Á¤·ÄÀ» À§ÇÑ ¿É¼Ç(ASC:¿À¸§Â÷¼ø(Default),DESC³»¸²Â÷¼ø)



 ¢Ñ SQL¹®ÀÇ ÀÛ¼º ¹æ¹ý

  - SQL ¹®ÀåÀº ´ë¼Ò¹®ÀÚ¸¦ ±¸º°ÇÏÁö ¾Ê½À´Ï´Ù.

  - SQL ¹®ÀåÀº ÇÑ ÁÙ ¶Ç´Â ¿©·¯ ÁÙ¿¡ ÀÔ·ÂµÉ ¼ö ÀÖ½À´Ï´Ù.

  - ÀϹÝÀûÀ¸·Î Ű¿öµå´Â ´ë¹®ÀÚ·Î ÀÔ·ÂÇÕ´Ï´Ù.
     ´Ù¸¥ ¸ðµç ´Ü¾î, Áï Å×À̺í À̸§, ¿­ À̸§Àº ¼Ò¹®ÀÚ·Î ÀÔ·ÂÇÕ´Ï´Ù.(±ÇÀå) 

  - °¡Àå ÃÖ±ÙÀÇ ¸í·É¾î°¡ 1°³°¡ SQL buffer¿¡ ÀúÀåµË´Ï´Ù.

  - SQL¹® ¸¶Áö¸· ÀýÀÇ ³¡¿¡ ";"¸¦ ±â¼úÇÏ¿© ¸í·ÉÀÇ ³¡À» Ç¥½Ã ÇÕ´Ï´Ù.
 

SQL>SELECT empno »ç¹ø, ename ¼º¸í
       FROM   emp
       WHERE  deptno = 10

      »ç¹ø      ¼º¸í
---------- ---------------
      7782      CLARK
      7839      KING
      7934      MILLER



empno¿Í ename Àº °¢°¢ »ç¹ø°ú ¼º¸íÀ̶ó´Â Ä÷³ º°Äª(alias)À¸·Î ¸¸µé¾î Ãâ·ÂÇß½À´Ï´Ù.
alias¸¦ »ç¿ëÇÒ ¶§ as¶ó´Â Ű¿öµå¸¦ »ç¿ëÇØµµ µÇ°í, »ý·«ÇÒ¼öµµ ÀÖ½À´Ï´Ù.


¢Æ WHEREÀý¿¡ »ç¿ëµÉ ¼ö ÀÖ´Â SQL ¿¬»êÀÚ

 ¿¬»êÀÚ

 ¼³      ¸í

 BETWEEN a AND b

 a¿Íb»çÀÌÀÇ µ¥ÀÌÅ͸¦ Ãâ·Â ÇÕ´Ï´Ù.(a, b°ª Æ÷ÇÔ)

 IN  (list)

 listÀÇ °ª Áß ¾î´À Çϳª¿Í ÀÏÄ¡ÇÏ´Â µ¥ÀÌÅ͸¦ Ãâ·Â ÇÕ´Ï´Ù.

 LIKE

 ¹®ÀÚ ÇüÅ·ΠÀÏÄ¡ÇÏ´Â µ¥ÀÌÅ͸¦ Ãâ·Â ÇÕ´Ï´Ù.(%, _»ç¿ë)

 IS NULL

 NULL°ªÀ» °¡Áø µ¥ÀÌÅ͸¦ Ãâ·Â ÇÕ´Ï´Ù.

 NOT BETWEEN a AND b

 a¿Íb»çÀÌ¿¡ ÀÖÁö¾ÊÀº µ¥ÀÌÅ͸¦ Ãâ·Â ÇÕ´Ï´Ù.(a, b°ª Æ÷ÇÔÇÏÁö ¾ÊÀ½)

 NOT IN  (list)

 listÀÇ °ª°ú ÀÏÄ¡ÇÏÁö ¾Ê´Â µ¥ÀÌÅ͸¦ Ãâ·Â ÇÕ´Ï´Ù.

 NOT LIKE

 ¹®ÀÚ ÇüÅÂ¿Í ÀÏÄ¡ÇÏÁö ¾Ê´Â µ¥ÀÌÅ͸¦ Ãâ·Â ÇÕ´Ï´Ù.

 IS NOT NULL

 NULL°ªÀ» °®Áö ¾Ê´Â µ¥ÀÌÅ͸¦ Ãâ·Â ÇÕ´Ï´Ù.




¢Ã IN, NOT IN ¿¬»êÀÚ


IN ¿¬»êÀÚ

SQL> SELECT empno, ename
         FROM  emp
         WHERE  empno IN (7900, 7934) ;

--> »ç¹øÀÌ 7900, 7934¹øÀÎ »ç¿øÀÇ »ç¹ø°ú ¼º¸í Ãâ·Â

    EMPNO    ENAME
 --------- -------------
     7934      MILLER
     7900      JAMES

2 °³ÀÇ ÇàÀÌ ¼±ÅõǾú½À´Ï´Ù.

NOT IN ¿¬»êÀÚ

SQL> SELECT empno, ename
         FROM  emp
         WHERE  empno NOT IN (7900, 7934);

--> »ç¹øÀÌ 7900, 7934¹øÀÌ ¾Æ´Ñ »ç¿øÀÇ »ç¹ø°ú ¼º¸í Ãâ·Â

     EMPNO ENAME
-------- --------------
    7369 SMITH
    7499 ALLEN
    7521 WARD
    7566 JONES 
    7654 MARTIN
    7698 BLAKE
    ............................
13 °³ÀÇ ÇàÀÌ ¼±ÅõǾú½À´Ï´Ù.



BETWEEN
¿¬»êÀÚ(AND¸¦ ÀÌ¿ëÇØ µÎ Á¶°ÇÀ» °áÇÕÇÑ °Ë»ö°ú °°Àº °á°ú°ªÀ» º¸¿©ÁÝ´Ï´Ù.)

BETWEEN ¿¬»êÀÚ

SQL>  SELECT empno, ename
          FROM  emp
          WHERE  sal BETWEEN  3000 AND 5000 ;

--> ±Þ¿©°¡ 3000¿¡¼­ 5000»çÀÌÀÎ »ç¿ø¸¸ º¸¿©ÁÝ´Ï´Ù.

     EMPNO ENAME
   ---------- ------
      7788 SCOTT
      7839 KING
      7902 FORD  
3 °³ÀÇ ÇàÀÌ ¼±ÅõǾú½À´Ï´Ù.



LIKE ¿¬»êÀÚ


 - °Ë»ö STRING °ª¿¡ ´ëÇÑ ¿ÍÀϵå Ä«µå °Ë»öÀ» À§Çؼ­ LIKE¿¬»êÀÚ¸¦ »ç¿ë ÇÕ´Ï´Ù.
 - % :  ¿©·¯°³ÀÇ ¹®ÀÚ¿­À» ³ªÅ¸³»´Â ¿ÍÀϵå Ä«µå
 - _ : ´Ü ÇϳªÀÇ ¹®ÀÚ¸¦ ³ªÅ¸³»´Â ¿ÍÀϵå Ä«µå
 - ESCAPE : ¿ÍÀϵå Ä«µå ¹®ÀÚ¸¦ ÀϹݹ®ÀÚ Ã³·³ »ç¿ëÇÏ°í ½ÍÀº °æ¿ì¿¡ »ç¿ëÇÕ´Ï´Ù.
   ¢Ñ WHERE name LIKE '%a\_y%' ESCAPE '\' ;

±¸ ºÐ

¼³ ¸í

LIKE 'A%'

Ä÷³ÀÌ 'A'·Î ½ÃÀÛÇÏ´Â µ¥ÀÌÅ͵鸸 °Ë»öµË´Ï´Ù.

LIKE '%A'

Ä÷³ÀÌ 'A'·Î ³¡³ª´Â Å×ÀÌÅ͵鸸 °Ë»öµË´Ï´Ù.

LIKE '%KIM%'

Ä÷³¿¡ 'KIM' ¹®ÀÚ°¡ ÀÖ´Â µ¥ÀÌÅÍ µé¸¸ °Ë»öµË´Ï´Ù.

LIKE '%K%I%'

Ä÷³¿¡ 'K' ¹®ÀÚ¿Í 'I'¹®ÀÚ°¡ ÀÖ´Â µ¥ÀÌÅÍ µé¸¸ °Ë»öµË´Ï´Ù.

LIKE '_A%'

Ä÷³¿¡ 'A'¹®ÀÚ°¡ µÎ ¹øÂ° À§Ä¡ÇÑ µ¥ÀÌÅÍ µé¸¸ °Ë»öµË´Ï´Ù.


- LIKE ¿¬»êÀÚ´Â ´ë¼Ò¹®ÀÚ¸¦ ±¸ºÐÇÕ´Ï´Ù.
- Upper()ÇÔ¼ö¸¦ ÀÌ¿ëÇØ ´ë¼Ò¹®ÀÚ ±¸ºÐ¾øÀÌ Ãâ·ÂÇÒ¼ö ÀÖ½À´Ï´Ù.


SQL>SELECT empno, ename
        FROM  emp
        WHERE  UPPER(ename) like '%K%';

EMPNO ENAME
------- -----------
   7698 BLAKE
   7782 CLARK
   7839 KING

'K' ¹®ÀÚ°¡ µé¾îÀÖ´Â »ç¿ø Á¤º¸¸¦ º¸¿©ÁÝ´Ï´Ù.
upper()¶ó´Â ÇÔ¼ö´Â k°¡ µé¾î°¡ ÀÖ´Â °Íµµ ´ë¹®ÀÚ 'K'·Î ÀνÄÇϱ⠶§¹®¿¡ µ¥ÀÌÅ͵éÀ» º¸¿©ÁÝ´Ï´Ù.



¡Ø '_'¸¦ ÀÌ¿ëÇÑ LIKE°Ë»ö

SQL>SELECT empno, ename
        FROM  emp
        WHERE  UPPER(ename) like '_I%'

  EMPNO ENAME
------- ----------
   7839 KING
   7934 MILLER

¡Ø '_'´Â ÇÑ ¹®ÀÚ¸¦ ³ªÅ¸³À´Ï´Ù.
   'I' ¹®ÀÚ°¡ µÎ ¹øÂ° ¹®ÀÚ¿¡ À§Ä¡ÇÑ »ç¿øµéÀÇ Á¤º¸¸¦ º¸¿©ÁÝ´Ï´Ù.

 



ORDER BY
(ASC[¿À¸§Â÷¼ø], DESC[³»¸²Â÷¼ø])
  ORDER BY ÀýÀº µ¥ÀÌÅÍÀÇ Á¤·ÄÀ» À§ÇØ »ç¿ëÇÕ´Ï´Ù.  

SQL> SELECT empno, ename
         FROM  emp
         WHERE  deptno = 30
         ORDER BY ename ASC;

   EMPNO ENAME
-------- ---------
    7499 ALLEN
    7698 BLAKE
    7900 JAMES
    7654 MARTIN
    7844 TURNER
    7521 WARD

SQL> SELECT empno, ename
         FROM  emp
         WHERE  deptno = 30
         ORDER BY 2

À§ µÎ °³ÀÇ Äõ¸®´Â µ¿ÀÏÇÑ °á°ú¸¦ °¡Á® ¿É´Ï´Ù.