Manuel Soriano Contents: µé¾î °¡´Â ¸» Table ¸¸µé±â Table ¼öÁ¤Çϱâ Table¿¡ µ¥ÀÌŸ ÀÔ·ÂÇϱ⠵¥ÀÌŸ ¼±ÅÃÇϱâ WHERE¿¡ ´ëÇÑ ÀÚ¼¼ÇÑ ¼³¸í UPDATE ¸í·É DELETE ¸í·É ÂüÁ¶ |
SQL Tutorial
|
name: | »ý¼ºµÉ tableÀÇ À̸§ÀÌ´Ù. |
Column: | Ä÷³ÀÇ À̸§ÀÌ´Ù. |
Type: | µ¥ÀÌŸÀÇ Å¸ÀÔÀÌ´Ù.(varchar, char, int, date, time, timestamp), Postgres ´Â ´Ù¸¥ data typeµµ ÀÖÁö¸¸, ANSI SQL°ú´Â ȣȯµÇÁö ¾Ê´Â´Ù. |
Value: | default·Î °¡Áú °ªÀ» ÁöÁ¤ÇÑ´Ù. |
Inherits: | Postgre¿¡¸¸ ÀÖ´Â °ÍÀ¸·Î, ´Ù¸¥ Å×ÀÌºí¿¡ ÀÖ´Â ¸ðµç Ä÷³À» »ó¼Ó¹Þ°Ô µÈ´Ù. |
Nom_cons: | row°¡ ¼öÁ¤µÉ ¶§¸¶´Ù µ¥ÀÌŸÀÇ °ªÀÌ Á¤´çÇÑÁö¸¦ Á¤ÀÇÇÑ´Ù. |
Test: | °Ë»çÇÒ Á¶°ÇÀÌ´Ù. |
CREATE TABLE countries ( cod_country integer NOT NULL, name varchar(30)) CONSTRAINT cod_raro CHECK (cod_country > 0 AND cod_country < 154);
À§ÀÇ ¿¹¿¡¼ countries¶ó´Â tableÀ» ¸¸µé¾ú´Ù. Å×ÀÌºí¿¡ °ªÀ» ÀÔ·ÂÇÒ ¶§¸¶´Ù ´ÙÀ½ Á¶°Ç¿¡ ¸Â´ÂÁö È®ÀÎÇÏ°Ô µÈ´Ù.
ExecAppend: cod_countryÀÇ ¼Ó¼ºÀÌ NULLÀÌ ¾Æ´Ï±â ¶§¹®¿¡ ½ÇÆÐÇÏ°Ô µÈ´Ù.
ExecAppend: cod_raro °Ë»ç¸¦ °ÅºÎÇÏ°Ô µÈ´Ù.
NULLÀº ¹«¾ùÀ» ÀǹÌÇϴ°¡? SQL¿¡´Â data¿Í data°¡ ¾Æ´Ñ °Í µÎ°¡Áö »óÅ°¡ ÀÖ´Ù. ¿µ(0)À̳ª °ø¹é ¹®ÀÚ µ¥ÀÌŸ¸¦ ÀǹÌÇÏ´Â °Íó·³ ¿ì¸®´Â µ¥ÀÌŸ¸¦ °¡ÁöÁö ¾Ê´Â Çʵ带 ÇÊ¿ä·Î ÇÒ ¶§°¡ ÀÖ´Ù. SQL¿¡¼´Â NULLÀ̶ó´Â °³³äÀ» µµÀÔÇß´Ù. ½ÇÁ¦ÀûÀÎ ¿¹´Â ´ÙÀ½°ú °°´Ù.
billÀ̶ó´Â µ¥À̺íÀ» ¸¸µé°í, customer, value, date_issued, date_paid¶ó´Â Çʵ带 °¡Áö°í ÀÖ´Ù.
±×¸®°í customer, value, date_issued Çʵ忡 °ªÀ» ´ëÀÔÇÏ°í,
date_paid´Â NULL·Î Çß´Ù. ÀÌ·± ½ÄÀ¸·Î ÁöºÒÇؾßÇÒ µ·À» ¾Ë¼ö°¡ ÀÖ´Ù.
SELECT * FROM bills WHERE date_paid IS NULL ;
date_padi¸¦ ¿µ(0)À¸·Î Çصµ °ªÀº È¿°ú¸¦ ³¾ ¼ö ÀÖ´Ù°í »ý°¢ÇÏ´Â »ç¶÷µµ ÀÖÀ» ÅÙµ¥, ¿µ(0)ÀÌ ³¯Â¥°¡ ¾Æ´Ñ °ÍÀ» Á¦¿ÜÇÏ°í, ¸Â´Â ¸»ÀÌ´Ù. ±×¸®°í ³¯Â¥¿¡ °üÇÑ ÇÔ¼ö¸¦ ÀÌ¿ëÇÏ°í, date typeÀÇ date_paid¸¦ ¸¸µå´Â °ÍÀ» ¹æÁöÇÑ´Ù.
(¿ªÀÚÁÖ : ¿µ¾î°¡ ª¾Æ¼ ¹ø¿ªÀÌ ¾û¼ºÇϱº¿© ^^; ¿ø¹®ÀÔ´Ï´Ù.
One can claim that a zero (0) in the field date_paid would do the same thing. It's
true,
except that zero (0) is not a date, and it prevents creating date_paid of date type
and
applying appropriate date functions.)
NULLÀ» ÀÌ¿ëÇÏ¿© »ý¼ºÇÏ´Â ¿¹:
insert into countries values (15, NULL);¶Ç´Â:
insert into countries (cod_country) values (27);
'name'¿¡ °ªÀ» ´ëÀÔÇÏÁö ¾Ê´Â °ÍÀº NULL °ªÀ» ¹Þ´Â ´Ù´Â °ÍÀ» ÀǹÌÇÑ´Ù.
PostgreSQL¿¡¼´Â TableÀÇ ¼öÁ¤Àº »õ·Î¿î Ä÷³À» Ãß°¡ÇÏ´Â Àϸ¸À» ÇÒ ¼ö ÀÖ´Ù.
ALTER TABLE table ADD name type;
Table | ¼öÁ¤ÇÏ°íÀÚ ÇÏ´Â TableÀÇ À̸§ |
Name | Ãß°¡ÇÏ°íÀÚ ÇÏ´Â Ä÷³ÀÇ À̸§ |
Type | dataÀÇ Å¸ÀÔ ( CREATE TABLEÀ» º¸¶ó) |
ÀÌÁ¦ Table¿¡ °ªÀ» ÀÔ·ÂÇÏ´Â °Í¿¡ ´ëÇØ ¹è¿î´Ù.
¹®¹ý:INSERT INTO table [(column, column, ...)] VALUES (value-1, value-2, ...)or else:
INSERT INTO table [(column, column, ...)] SELECT ....
º¸¾Ò´Ù ½ÃÇÇ table¿¡ µ¥ÀÌŸ¸¦ ÀÔ·ÂÇÏ´Â ¹æ¹ýÀº µÎ °¡Áö°¡ ÀÖ´Ù. ÇÑÁÙ ÇÑÁÙ ÀÔ·ÂÇÏ´Â ¹æ¹ý°ú ¿©·¯ row¸¦ ¸®ÅÏÇÏ´Â sub-select¸¦ ÀÌ¿ëÇÏ´Â ¹æ¹ýÀÌ´Ù.
table¿¡ µ¥ÀÌŸ¸¦ ÀÔ·ÂÇÒ ¶§´Â NULL °ªÀ» Æ÷ÇÔÇÑ ¸ðµç Ä÷³µé¿¡ °ªÀ» Áý¾î ³Ö¾î¾ß ÇÑ´Ù.
µ¥ÀÌŸ¸¦ ÀÔ·ÂÇÏ´Â ¸í·É¿¡ ¾î¶² Ä÷³¿¡ °ªÀ» ÀÔ·ÂÇÒÁö ¸í½ÃÈÇÏÁö ¾ÊÀ¸¸é ¸ðµç Ä÷³¿¡ µ¥ÀÌŸ¸¦ ÀÔ·ÂÇÏ´Â °ÍÀ¸·Î ÀÌÇØÇÑ´Ù. ¿¹¸¦ µé¾î:
INSERT INTO countries VALUES (34, 'Spain');´ÙÀ½Àº Ʋ¸° °ÍÀÌ´Ù.
INSERT INTO countries VALUES (34);ÇÏÁö¸¸ ´ÙÀ½Àº ¿ÇÀº °ÍÀÌ´Ù.
INSERT INTO countries (cod_country) VALUES (34);
ÇÊÀÚ´Â C ¾ð¾î¿¡¼ DB ÇÁ·Î±×·¡¹ÖÀ» Çϰųª database ÇÔ¼ö¸¦ »ç¿ëÇÒ ¶§ ¿øÇÏ´Â Ä÷³À» ²À ¸í½ÃÈ ÇÒ °ÍÀ» ÃßõÇÏ´Â ¹ÙÀÌ´Ù. ¿Ö³ÄÇϸé ALTER TABLEµîÀ» ÀÌ¿ëÇÏ¿© »õ·Î¿î Ä÷³À» Ãß°¡ÇßÀ» ¶§ ´ÙÀ½ ¹øÀÇ insert´Â ¿¡·¯¸¦ ³»±â ¶§¹®ÀÌ´Ù.
¿¹:
ÀÌ´Â 'population' data°¡ ºüÁ³±â ¶§¹®¿¡ ±¸¹® ¿¡·¯¸¦ ³»°Ô µÈ´Ù.
PostgreSQL¿¡¼´Â ¿¡·¯¸¦ ¹ß»ýÇÏÁö ¾Ê°í, 'population' Çʵ带 NULL·Î ä¿î´Ù. ÇÏÁö¸¸, ÀÌ°ÍÀº PostgreSQLÀÇ Æ¯Â¡ÀÌ°í, ´Ù¸¥ SQL¿¡¼´Â ¿¡·¯¸¦ ¹ß»ýÇÒ °ÍÀÌ´Ù.
sub-select¸¦ ÀÌ¿ëÇÑ ´Ù¸¥ ¹æ¹ýÀÇ INSERT°¡ ÀÖ´Ù.
ÀÌ ¹æ¹ýÀÇ insert´Â ÀÓ½ÃÀûÀÎ tableÀ» ¸¸µé°Å³ª À§ÇèÀ» ³»Æ÷ÇÑ °è»êÀ» ¾ÈÀüÇÏ°Ô Çϱâ À§Çؼ ÀÚÁÖ ¾²ÀδÙ.
insert¸¦ ÀÌ¿ëÇؼ data°¡ ÀÚü°¡ ´ëÄ¡µÈ °æ¿ì, ÀÌ°ÍÀº SELECT¿¡ ÀÇÇؼ ¹ÝȯµÈ´Ù. SELECT´Â ÇÑ row ¶Ç´Â ¿©·¯ row¸¦ ¸®ÅÏÇÒ ¼ö ÀÖ´Ù. SELECT´Â SELECT¿Í °°Àº Á¦¾à »çÇ×À» °¡Áø´Ù.
ÇÊÀÚ´Â »¡¸® ÀÌ ºÎºÐÀ¸·Î ¿À±æ ¿øÇß´Ù.! :-))
SQL ¸í·ÉÀ» ¸î °¡Áö º¸¾Ò´Àµ¥, SELECT¾ø´Â SQL ¾ð¾î´Â ¼ø´ë¿¡ ºÒ°úÇÏ´Ù.
SELECT ¸í·ÉÀº ¿ì¸®°¡ data¿¡ Á¢±ÙÇÏ´Â °ÍÀ» Çã¶ôÇÑ´Ù. ÇÏÁö¸¸ ÀÌ·¯ÇÑ Á¢±ÙÀº ¿¹¾àµÈ °Íµé, Áï Ž»öÀ̳ª, tableµéÀÇ °áÇÕ, data¿¡ °üÇÑ ÇÔ¼ö, Ž»ö ±Ô¾à µîÀÌ´Ù.
¿¹:
select * from countries;
*´Â ¸ðµç Ä÷³À» ÀǹÌÇÑ´Ù.
´Ù¸¥ ¿¹:
SELECT a.name, SUM(population) FROM countries a, states b, counties c WHERE b.cod_country = a.cod_country AND (c.cod_country = b.cod_country AND c.state_code = b.state_code) AND population IS NOT NULL GROUP BY a.name ORDER BY sum ASC;
¼³¸í»ó, ÇÊÀÚ´Â ¸ðµç ³ª¶óÀÇ Àα¸¸¦ ¿Ã¸²Â÷¼øÀ¸·Î º¸±æ ¿øÇß´Ù.
À̸¦ À§ÇÏ¿© 'population'À̶ó´Â Ä÷³À» counties table¿¡ Ãß°¡Çß´Ù.
´ÙÀ½°ú °°´Ù:create table counties (cod_country int, state_code int, county_code int, county_name varchar(60), population int); insert into counties values (1, 1, 1, 'Country 1, State 1, County 1', 5435); insert into counties values (2, 1, 1, 'Country 2, State 1, County 1', 7832); insert into counties values (3, 1, 1, 'Country 3, State 1, County 1', 4129); insert into counties values (1, 2, 1, 'Country 1, State 2, County 1', 76529); insert into counties values (2, 2, 1, 'Country 2, State 2, County 1', 9782); insert into counties values (3, 2, 1, 'Country 3, State 2, County 1', 852); insert into counties values (1, 3, 1, 'Country 1, State 3, County 1', 3433); insert into counties values (2, 3, 1, 'Country 2, State 3, County 1', 7622); insert into counties values (3, 3, 1, 'Country 3, State 3, County 1', 2798); insert into counties values (1, 1, 2, 'Country 1, State 1, County 2', 7789); insert into counties values (2, 1, 2, 'Country 2, State 1, County 2', 76511); insert into counties values (3, 1, 2, 'Country 3, State 1, County 2', 98); insert into counties values (1, 2, 2, 'Country 1, State 2, County 2', 123865); insert into counties values (2, 2, 2, 'Country 2, State 2, County 2', 886633); insert into counties values (3, 2, 2, 'Country 3, State 2, County 2', 982345); insert into counties values (1, 3, 2, 'Country 1, State 3, County 2', 22344); insert into counties values (2, 3, 2, 'Country 2, State 3, County 2', 179); insert into counties values (3, 3, 2, 'Country 3, State 3, County 2', 196813); insert into counties values (1, 1, 3, 'Country 1, State 1, County 3', 491301); insert into counties values (2, 1, 3, 'Country 2, State 1, County 3', 166540); insert into counties values (3, 1, 3, 'Country 3, State 1, County 3', 165132); insert into counties values (1, 2, 3, 'Country 1, State 2, County 3', 0640); insert into counties values (2, 2, 3, 'Country 2, State 2, County 3', 65120); insert into counties values (3, 2, 3, 'Country 3, State 2, County 3', 1651462); insert into counties values (1, 3, 3, 'Country 1, State 3, County 3', 60650); insert into counties values (2, 3, 3, 'Country 2, State 3, County 3', 651986); insert into counties values (3, 3, 3, 'Country 3, State 3, County 3', NULL); commit work;
ÀÌÁ¦ ¿ì¸®´Â ALTER TABLE¸¦ ÀÌ¿ëÇÒ ¼ö ¾øÁö¸¸, ¾ÆÁ÷ ¼³¸íÇÏÁö ¾ÊÀº UPDATE¸¦ »ç¿ëÇÒ ¼ö ÀÖ´Ù. "cut & paste"¸¦ ÀÌ¿ëÇ϶ó. ¸ðµç »ç¶÷ÀÌ happy ÇØÁú °ÍÀÌ´Ù. :-))
Äõ¸®¸¦ ¼öÇàÇÔÀ¸·Î¼ ´ÙÀ½°ú °°Àº °á°ú¸¦ ¾òÀ» ¼ö ÀÖ´Ù.
name | sum - ---------+------- country 1| 705559 country 2|1212418 country 3|2804018 (3 rows)´ÙÀ½°ú °°ÀÌ Çϸé:
sum - ------ 791986 (1 row)
!!!!!! Çϳª°¡ ´Ù¸£´Ù !!!!!!
ÀÌÁ¦ states tableÀ» º¸ÀÚ. state 3¸¦ »©¾ï¾ú´Ù.
INSERT INTO states VALUES (3, 1, 'State 3, Country 1'); INSERT INTO states VALUES (3, 2, 'State 3, Country 2'); INSERT INTO states VALUES (3, 3, 'State 3, Country 3');±×¸®°í ¸í·ÉÀ» ¹Ýº¹ÇÏ¿© ´ÙÀ½°ú °°Àº °á°ú¸¦ ¾ò´Â´Ù.
name | sum - ---------+------- country 1| 791986 country 2|1872205 country 3|3003629
°¢°¢ÀÇ country¿¡ state 3°¡ ¾ø´Ù.
(Å×ÀÌºí °£ÀÇ joindl EXACTÀÓÀ» ±â¾ïÇ϶ó) ¾ø¾îÁø °Íµé¿¡ ´ëÇؼ Á¶°Ç¿¡ ¸Â´Â °Íµé¸¸ ÃßÃâÇÒ ¼ö ÀÖ´Ù.
´Ù½Ã À ºÎºÐÀ¸·Î ¿Ã¶ó°¡¼WHERE b.cod_country = a.cod_countryºÎºÐÀ» º¸ÀÚ.
ÀÌ°ÍÀº country table°ú state¸¦ cod_country°¡ °°Àº °ÍÀ» joinÇß´Ù´Â °ÍÀ» ¸»ÇØÁØ´Ù. country data°¡ »çÀԵƴٴ °ÍÀ» ±â¾ïÇضó.
´ÙÀ½À» ½ÇÇà½ÃÅ°Áö´Â ¸¶¶ó. ´Ü¼øÇÑ ¿¹ÀÌ´Ù.
create table countries (cod_country integer, name varchar(30)); insert into countries values (1, 'country 1'); insert into countries values (2, 'country 2'); insert into countries values (3, 'country 3'); commit work;ÀÌÁ¦ states data¸¦ º¸ÀÚ
create table states (state_code int, cod_country int, state_name varchar(30)); insert into states values (1, 1, 'State 1, Country 1'); insert into states values (2, 1, 'State 2, Country 1'); insert into states values (1, 2, 'State 1, Country 2'); insert into states values (2, 2, 'State 2, Country 2'); insert into states values (1, 3, 'State 1, Country 3'); insert into states values (2, 3, 'State 2, Country 3'); commit work;°¢°¢ÀÇ country¿¡ ´ëÇؼ state 3°¡ ¾ø´Ù. ±×·¯³ª, country table¿¡´Â states 3°¡ ÀÖ´Ù. µû¶ó¼, ¿ì¸®°¡ whereÀÇ µÎ ¹ø° ºÎºÐ¿¡¼ code 3¸¦ ¹«½ÃÇÏ°í, country data¿¡ states¸¦ Ãß°¡ÇÏÁö ¾ÊÀº °ÍÀº ´ç¿¬ÇÑ °ÍÀÌ´Ù.
AND (c.cod_country = b.cod_country AND c.state_code = b.state_code)
state´Â counties table¿¡´Â ÀÖÁö¸¸, states table¿¡´Â ¾ø´Ù.
À§¿¡¼ ¸»ÇÑ °ÍÀÌ ÀÌÇØ°¡ Àß ¾È °£´Ù¸é, ¾Æ½ºÇǸ° ÇÑ ¾ËÀ» ¸Ô°í, °³¿Í ÇÔ²² »êÃ¥À» ³ª°¡¶ó(°³°¡ ¾øÀ¸¸é È¥ÀÚ °¡¶ó). ½ÉÈ£ÈíÀ» Á» ÇÏ¸é¼ ½® ÈÄ¿¡ óÀ½ºÎÅÍ ´Ù½Ã ½ÃÀÛÇ϶ó
JoinÀ» ÇÑ °á°ú°¡ ¾î¶»°Ô ³ª¿À´ÂÁö ÀÌÇØÇÏ´Â °ÍÀº ¸Å¿ì Áß¿äÇÏ´Ù. ÀÌ·¯ÇÑ °³¹ßÀ» ÇÏÁö ¾Ê´Â´Ù¸é, ¿¹ÃøÇÒ ¼ö ¾ø´Â °á°ú°¡ ³ª¿Ã ¼ö ÀÖ´Ù.
ÀÌÁ¦ °üÁ¡À» Á¶±Ý ¹Ù²ã¼ SELECT ¸í·ÉÀÇ ¹®¹ý¿¡ ´ëÇؼ ¾Ë¾Æ º¸ÀÚ
SELECT [DISTINCT] expression1 [AS nom-attribute] {, expression-i [as nom-attribute-i]} [INTO TABLE classname] [FROM from-list] [WHERE where-clause] [GROUP BY attr_name1 {, attr_name-i....}] [ORDER BY attr_name1 [ASC | DESC ] [USING op1 ] {, nom-attribute-i...}] [UNION {ALL} SELECT ...]Çϳª¾¿ »ìÆ캸ÀÚ
DISTINCT: | row°¡ Áߺ¹µÇ¾î ¸®ÅϵǴ °ÍÀ» ¸·´Â´Ù. |
expression1: | ¿ì¸®°¡ ¸®ÅϵDZ⠿øÇÏ´Â °ÍÀÌ´Ù. º¸Åë FROM µÚ¿¡ ¿À´Â TableÀÇ Ä÷³ÀÌ µÈ´Ù. |
AS nom-attribute: | Ä÷³ À̸§ÀÇ º°¸í(alias)ÀÌ´Ù.¿¹¸¦ µé¾î:
manu=> select cod_country from countries; cod_country - ----------- 1 2 3 (3 rows)º°¸í(alias)¸¦ ÀÌ¿ëÇϸé: manu=> select cod_country as countr from countries; countr - ------ 1 2 3 (3 rows) |
INTO TABLE: | °á°ú°¡ ´Ù¸¥ Table·Î Á÷Á¢ »ðÀÔ µÇ°Ô ÇÑ´Ù. ( INSERT ... SELECT...¸¦ º¸¶ó) |
FROM: | TableµéÀÇ ¸ñ·ÏÀÌ´Ù. |
WHERE: | ¼±Åà ¹®, selection statement (union °ú selection criteria). |
GROUP BY: | group criteria, ƯÁ¤ÇÑ ±×·ìÈÇÏ´Â ÇÔ¼ö°¡ ¾²ÀδÙ. |
ORDER BY: | ¸®ÅϵǴ rowÀÇ ¼ø¼¸¦ Á¤ÇÑ´Ù. ASC:¿À¸§ Â÷¼ø, DESC:³»¸² Â÷¼ø, USING:(expression) ¸ñ·Ï¿¡ ¼ø¼°¡ Á¤ÀǵǾî ÀÖÁö ¾ÊÀ» ¶§. |
UNION ALL SELECT: | This says to add to the results of the first SELECT this second SELECT that can be different tables, but return the same number of columns. |
SELECT ¸í·ÉÀº DB·ÎºÎÅÍ ¾ÆÀÌÅÛÀ» ¸®ÅÏÇÏ´Â °Í »Ó¸¸¾Æ´Ï¶ó, itemÀ» ¼öÁ¤ÇÒ ¼öµµ ÀÖ´Ù´Â °ÍÀ» º¸¾Ò´Ù.
ÀÌ°ÍÀº ÁöºÒÀÇ 10%¸¦ ¸®ÅÏÇÑ´Ù.
»ç¿ë°¡´ÉÇÑ ÇÔ¼öµé¿¡ ´ëÇؼ ¾Ë¾Æ º¸ÀÚ:
COUNT(): | NULLÀÌ ¾Æ´Ñ rowÀÇ ¼ö¸¦ ¸®ÅÏÇÑ´Ù. |
SUM(): | Ä÷³µéÀÇ ÇÕÀ» ¸®ÅÏÇÑ´Ù. |
AVG(): | Ä÷³µéÀÇ Æò±ÕÀ» ¸®ÅÏÇÑ´Ù. |
MIN(): | Ä÷³¿¡¼ °¡Àå ÀÛÀº °ªÀ» ¸®ÅÏÇÑ´Ù. |
MAX(): | Ä÷³¿¡¼ °¡Àå Å« °ªÀ» ¸®ÅÏÇÑ´Ù. |
FLOAT(int): | Á¤¼ö¸¦ ½Ç¼ö·Î ¸®ÅÏÇÑ´Ù.,FLOAT(12345) |
FLOAT4(int): | Á¤¼ö¸¦ ½Ç¼ö·Î ¸®ÅÏÇÑ´Ù.FLOAT4(12345) |
INT(float): | ½Ç¼ö¸¦ Á¤¼ö·Î ¸®ÅÏÇÑ´Ù.,INT(123.456) |
LOWER(text): | text¸¦ ¼Ò¹®ÀÚ·Î ¸®ÅÏÇÑ´Ù. |
UPPER(text): | text¸¦ ´ë¹®ÀÚ·Î ¸®ÅÏÇÑ´Ù. |
LPAD(text, long, char): | textÀÇ ¿ÞÂʺÎÅÍ long¸¸ÅÀÇ ±æÀ̱îÁö char·Î ä¿î´Ù. |
RPAD(text, long, char): | textÀÇ ¿À¸¥ÂʺÎÅÍ long ¸¸ÅÀÇ ±æÀ̸¦ char·Î ä¿î´Ù. |
LTRIM(text, char): | textÀÇ ¿ÞÂʺÎÅÍ text¾ÈÀÇ ¸ðµç char¸¦ Áö¿î´Ù. |
RTRIM(text, char): | textÀÇ ¿À¸¥ÂʺÎÅÍ text¾ÈÀÇ ¸ðµç char¸¦ Áö¿î´Ù. |
POSITION(string IN text): | string¾È¿¡¼ textÀÇ À§Ä¡¸¦ ÃßÃâÇÑ´Ù. ÇÏÁö¸¸, ÀÌ°ÍÀº ÀÛµ¿ÇÏÁö ¾Ê´Â´Ù. |
SUBSTR(text,from[,to]): | textÀÇ fromÀ§Ä¡ºÎÅÍ to±îÁö, ȤÀº ½ºÆ®¸µÀÇ ¸¶Áö¸·±îÁö(to°¡ »ý·«µÇ¾ú´Ù¸é) ¹®ÀÚ¸¦ ÃßÃâÇÑ´Ù. |
DATETIME(date, hour): | datetimeÀÇ Çü½ÄÀ» date (YYYY-MM-DD) ¿Í hour (HH:MM) Çü½ÄÀ¸·Î ¹Ù²Û´Ù. |
À̰͵éÀº SQL¿¡ ÀÖ´Â ¸î°¡ÁöÀÇ ÇÔ¼öµéÀÌ´Ù. À̵é ÇÔ¼ö´Â ANSI SQL¿¡ Á¤ÀǵǾî ÀÖ°í, Postgres95¿¡µµ Á¤ÀǵǾî ÀÖ´Ù.
Áö±Ý±îÁö SELECT¿¡¼ÀÇ WHERE¿¡ ´ëÇØ º¸¾Ò°í, ´ÙÀ½°ú °°ÀÌ ¾²ÀÏ ¼ö ÀÖ´Ù.
AND column = value
°£´ÜÇÑ ¿¹ÀÏ»ÓÀÌ°í, ´ÙÀ½°ú °°ÀÌ ¾²°Å³ª, ¾Æ´Ï¸é ÇÔ²² ¹¾î¼ ¾µ ¼ö ÀÖ´Ù.
AND, OR, NOT, IN, IN ALL, =, !=, >, <, (SELECT....), LIKE µîµµ ¶ÇÇÑ ¾²ÀÏ ¼ö ÀÖ´Ù. ¿¹:
WHERE column IN (SELECT DISTINCT column FROM table WHERE ....) column IN ('value1','value2','value3',...) (column = 'value' and column = 'other_value' OR column != 'value')!= '°°Áö ¾ÊÀ½'À» ³ªÅ¸³½´Ù.
WHERE column LIKE '%Pepito%'%´Â wildcardÀÌ´Ù. ¿¹¸¦ µé¾î "Pepito"°¡ ¹®ÀÚ¿¿¡ ¾È¿¡ ÀÖÀ¸¸é ÂüÀÌ´Ù.
WHERE column LIKE 'Pepito%'"Pepito"°¡ ¹®ÀÚ¿ÀÇ ½ÃÀÛÀ̸é ÂüÀÌ´Ù.
WHERE column LIKE '%Pepito'ÀÌ´Â "Pepito"°¡ ¹®ÀÚ¿ÀÇ ³¡À̸é ÂüÀÌ´Ù.
WHERE¿Í ÇÔ²² ¾²ÀÏ ¼ö ÀÖ´Â ¸ðµç ¿É¼ÇµéÀ» ¿°ÅÇÒ¸¸ÇÑ ½Ã°£ÀÌ ¾ø´Ù. ÇÑ°è´Â ÇÁ·Î±×·¡¸ÓÀÇ »ó»ó·ÂÀ̳ª, °¢°¢ÀÇ ¹®Àå ÀÛ¾÷ÀÇ ÇÑ°è¿¡ ÀÖ´Ù. ÀÌÁ¦ SELECT ¸í·ÉÀº ±×¸¸ÇÏ°í, ¸¶Áö¸· µÎ°¡Áö¿¡ ´ëÇؼ ÁýÁßÀ» ÇÏÀÚ
UPDATE ¸í·ÉÀº WHERE¿¡ ÀÖ´Â Á¶°ÇµéÀ» ¸¸Á·ÇÏ´Â, ÇÑ row ȤÀº ¿©·¯ rowÀÇ °ªÀ» ¼öÁ¤ÇÒ ¼ö ÀÖ´Ù.
SYNTAX:UPDATE table SET column-1 = expression-1 [, column-i = expression-i] [WHERE condition]Where:
table: | ¼öÁ¤ÇÏ°íÀÚ ÇÏ´Â TableÀÌ´Ù. Çѹø¿¡ ÇϳªÀÇ Table¸¸ÀÌ ¼öÁ¤µÉ ¼ö ÀÖ´Ù. |
column: | ¼öÁ¤µÇ°íÀÚ ÇÏ´Â Ä÷³ÀÌ´Ù. |
expression: | Ä÷³ÀÌ ¼öÁ¤µÇ¾îÁú °ªÀÌ´Ù. ÀÌ °ªÀº Á¤ÀûÀ̰ųª, ȤÀº ÇÔ¼ö·ÎºÎÅÍ ³ª¿Â °á°ú °ªÀÏ ¼ö ÀÖ´Ù. |
condition: | SELECT¿¡ ÀÇÇØ ÁÖ¾îÁø ¼öÁ¤µÇ¾îÁú Á¶°ÇµéÀÌ´Ù. |
DELETE FROM table [WHERE condition]
table: | »èÁ¦µÉ row°¡ ÀÖ´Â TableÀÇ À̸§ÀÌ´Ù. Çѹø¿¡ ÇϳªÀÇ Table¸¸ÀÌ Áö¿öÁú ¼ö ÀÖ´Ù. |
condition: | SELECT¿¡ ÀÇÇؼ ÁÖ¾îÁø Áö¿öÁú Á¶°ÇµéÀÌ´Ù. NOTE: WHEREÀ» ¾È ¾²¸é TableÀÇ ¸ðµç rowµéÀÌ »èÁ¦µÉ °ÍÀÌ´Ù.
|
¹ø¿ª:ÇãÁ¤¼ö
¿µ¹®À¸·Î ¹ø¿ª: Dallas L. Gale
º» À¥½ÎÀÌÆ®´Â Miguel Ángel Sepúlveda¾¾¿¡ ÀÇÇØ °ü¸®µË´Ï´Ù. © Manuel Soriano 1998 LinuxFocus 1998 |