| 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
À§ µÎ °³ÀÇ Äõ¸®´Â µ¿ÀÏÇÑ °á°ú¸¦ °¡Á® ¿É´Ï´Ù.
|
|
| |