| PostgreSQL 8.3.3¹®¼ | ||||
|---|---|---|---|---|
| Prev | Fast Backward | Fast Forward | Next | |
VALUES (
expression
[, ...] ) [, ...]
[ ORDER BY
sort_expression
[ ASC | DESC | USING
operator
] [, ...] ]
[ LIMIT {
count
| ALL } ]
[ OFFSET
start
]
VALUES ´Â, °ªÀÇ ½Ä¿¡¼ ÁöÁ¤µÈ Çà °ªÀ̳ª ÇàÀÇ ÁýÇÕÀ» °è»êÇÕ´Ï´Ù. Å« ¸í·É ¾È¿¡¼"Á¤¼ö Å×À̺í"À» ÀÛ¼ºÇϱâ À§Çؼ »ç¿ëÇÏ´Â °æ¿ì°¡ ´ëºÎºÐÀÌÁö¸¸, ±×°Í ´Üµ¶À¸·Î »ç¿ëÇÏ´Â Àϵµ °¡´ÉÇÕ´Ï´Ù.
º¹¼öÇàÀ» ÁöÁ¤ÇßÀ» °æ¿ì´Â, ¸ðµç ÇàÀÇ ¿ä¼Ò¼ö°¡ °°¾Æ¾ß¸¸ ÇÕ´Ï´Ù. Å×À̺íÀÇ Ä÷³ °á°ú°ªÀÇ µ¥ÀÌÅÍÇüÀ» °áÁ¤ÇÏ·Á¸é , ¸í½ÃÀûÀ¸·Î ÁöÁ¤µÇ°í ÀÖ´Â Çüųª ±× Ä÷³¿¡ µîÀåÇÏ´Â ½ÄÀ¸·ÎºÎÅÍ ÃßÃøÇÒ ¼ö ÀÖ´Â ÇüŸ¦ Á¶ÇÕÇØ »ç¿ëÇÕ´Ï´Ù. À̰ÍÀº UNION ¿Í °°Àº ¹æ½ÄÀÔ´Ï´Ù (Section 10.5 ¸¦ ÂüÁ¶ÇØ ÁֽʽÿÀ).
Å« ¸í·É ¾È¿¡¼ SELECT °¡ ¹®¹ý »ó»çÀå¼Ò¶ó¸é ¾îµð¿¡¼¶óµµ VALUES¸¦ »ç¿ëÇÒ ¼ö°¡ ÀÖ½À´Ï´Ù. ¿Ö³ÄÇϸé, À̰ÍÀº ¹®¹ý»óÀº SELECT ¿Í µ¿ÀÏ Ãë±ÞÀ̱⠶§¹®ÀÔ´Ï´Ù. VALUES ¸í·É°ú ÇÔ²² ORDER BY, LIMIT ±×¸®°í OFFSET ±¸¸¦ »ç¿ëÇÒ ¼ö°¡ ÀÖ½À´Ï´Ù.
»ó¼ö ȤÀº ½ÄÀÔ´Ï´Ù. À̰ÍÀ» °è»êÇÑ °á°ú°¡ Ç¥(Çà ¼¼Æ®) ¾ÈÀÇ ÁöÁ¤ÇÑ Àå¼Ò¿¡ »ðÀԵ˴ϴÙ. VALUES ¸®½ºÆ®¸¦ INSERT ÀÇ ÃÖ»óÁ¤µµ ·¹º§·Î »ç¿ëÇÏ´Â °æ¿ì´Â, expression ¸¦ DEFAULT¿¡ ÀÇÇØ ´ëü µÉ ¼ö ÀÖ½À´Ï´Ù. À̰ÍÀº, ±× Ä÷³ÀÇ ±âº»°ªÀ» »ðÀÔÇÏ´Â °ÍÀ» ³ªÅ¸³À´Ï´Ù. ´Ù¸¥ Àå¼Ò¿¡¼ VALUES ¸¦ »ç¿ëÇÏ´Â °æ¿ì¿¡´Â DEFAULT ´Â »ç¿ëÇÒ ¼ö ¾ø½À´Ï´Ù.
½Ä ȤÀº Á¤¼öÀÇ Á¤¼ö·Î, °á°úÀÇ ÇàÀ» Á¤·ÄÇÏ´Â ¹æ¹ýÀ» ³ªÅ¸³À´Ï´Ù. ÀÌ ½ÄÀº VALUES ÀÇ °á°úÀÇ Ä÷³À» column1,column2µî°ú °°ÀÌ ÂüÁ¶ÇÒ ¼ö°¡ ÀÖ½À´Ï´Ù. ÀÚ¼¼ÇÑ °ÍÀº ORDER BYÀý À» ÂüÁ¶ÇØ ÁֽʽÿÀ.
Á¤·Ä¿ëÀÇ ¿¬»êÀÚÀÔ´Ï´Ù. ÀÚ¼¼ÇÑ °ÍÀº ORDER BYÀý (À»)¸¦ ÂüÁ¶ÇØ ÁֽʽÿÀ.
µ¹·ÁÁÖ´Â ÇàÀÇ ÃÖ´ë¼öÀÔ´Ï´Ù. ÀÚ¼¼ÇÑ °ÍÀº LIMIT±¸ (À»)¸¦ ÂüÁ¶ÇØ ÁֽʽÿÀ.
ÇàÀ» µÇµ¹·ÁÁÖ´Â °ÍÀ» ½ÃÀÛÇϱâ Àü¿¡ ÇàÀÇ ¼ýÀÚ¸¦ °Ç³Ê ¶Ý´Ï´Ù. ÀÚ¼¼ÇÑ °ÍÀº LIMIT±¸ (À»)¸¦ ÂüÁ¶ÇØ ÁֽʽÿÀ.
¸Þ¸ð¸® ºÎÁ·À̳ª ¼º´ÉÀÇ ¿È¸¦ ÀÏÀ¸Å°°Ô ÇÒ °¡´É¼ºÀÌ Àֱ⠶§¹®¿¡ ¸Å¿ì ¸¹Àº ÇàÀ» °¡Áö´Â VALUES ¸®½ºÆ®¸¦ Ãë±ÞÇÏ´Â °ÍÀº ÇÇÇØ¾ß ÇÕ´Ï´Ù. INSERT ¿¡¼ ³ªÅ¸³ª´Â VALUESÀº Ưº°ÇÑ °æ¿ìÀÔ´Ï´Ù. (Ä÷³ÀÇ ÇüÅ´ INSERTÀÇ ´ë»ó Å×ÀÌºí¿¡¼ ¾Ë·ÁÁö°í VALUES ÀÇ ¸®½ºÆ®¸¦ Á¶»çÇØ ÇüŸ¦ ÃßÃøÇÒ Çʿ䰡 ¾ø±â ¶§¹®ÀÔ´Ï´Ù.) ±× ¶§¹®¿¡ ´Ù¸¥ Àå¸é¿¡ ºñÇØ Å« ¸®½ºÆ®¸¦ Ãë±ÞÇÒ ¼ö ÀÖ½À´Ï´Ù.
ÇÊ¿ä ÃÖ¼ÒÇÑÀÇ VALUES ¸í·ÉÀº ÀÌ¿Í °°½À´Ï´Ù.
VALUES (1, 'one'), (2, 'two'), (3, 'three');
À̰ÍÀº 2°³ÀÇ Ä÷³°ú 3 ÇàÀÌ 3Å×À̺íÀ» µ¹·ÁÁÝ´Ï´Ù. »ç½Ç»ó, À̰ÍÀº ´ÙÀ½°ú °°Àº °ÍÀÔ´Ï´Ù.
SELECT 1 AS column1, 'one' AS column2 UNION ALL SELECT 2, 'two' UNION ALL SELECT 3, 'three';
Åë»óÀº VALUES ´Â Å« SQL ¸í·ÉÀÇ ³»ºÎ¿¡¼ »ç¿ëÇÕ´Ï´Ù. °¡Àå ÀϹÝÀûÀ¸·Î »ç¿ëµÇ´Â °ÍÀº INSERT ÀÔ´Ï´Ù.
INSERT INTO films (code, title, did, date_prod, kind)
VALUES ('T_601', 'Yojimbo', 106, '1961-06-16', 'Drama');
INSERT ³»¿¡¼ »ç¿ëÇÏ´Â °æ¿ì¿¡´Â VALUES ÀÇ ¸®½ºÆ®ÀÇ Ç׸ñ¿¡ DEFAULT ¸¦ ÁöÁ¤ÇÒ ¼ö°¡ ÀÖ½À´Ï´Ù. À̰ÍÀº °ªÀ» ±¸Ã¼ÀûÀ¸·Î ÁöÁ¤ÇÏ´Â °ÍÀÌ ¾Æ´Ï¶ó ±× Ä÷³ÀÇ ±âº»°ªÀ» »ç¿ëÇÏ´Â °ÍÀ» ³ªÅ¸³À´Ï´Ù.
INSERT INTO films VALUES
('UA502', 'Bananas', 105, DEFAULT, 'Comedy', '82 minutes'),
('T_601', 'Yojimbo', 106, DEFAULT, 'Drama', DEFAULT);
VALUES ´Â, ºÎSELECT ¸¦ ¾µ ¼ö ÀÖ´Â Àå¼Ò¶ó¸é ¾îµð¿¡¼¶óµµ »ç¿ëÇÒ ¼ö°¡ ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¸é FROM ±¸·Îµµ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.
SELECT f.*
FROM films f, (VALUES('MGM', 'Horror'), ('UA', 'Sci-Fi')) AS t (studio, kind)
WHERE f.studio = t.studio AND f.kind = t.kind;
UPDATE employees SET salary = salary * v.increase
FROM (VALUES(1, 200000, 1.2), (2, 400000, 1.4)) AS v (depno, target, increase)
WHERE employees.depno = v.depno AND employees.sales >= v.target;
VALUES ¸¦ FROM ±¸ ¾È¿¡¼ »ç¿ëÇÏ´Â °æ¿ì¿¡´Â, AS ±¸°¡ Çʼö°¡ µÇ´Â °Í¿¡ ÁÖÀÇÇսôÙ. À̰ÍÀº SELECT ÀÇ °æ¿ì¿Í °°½À´Ï´Ù. AS ±¸·Î ¸ðµç Ä÷³ÀÇ À̸§À» ÁöÁ¤ÇÒ ÇÊ¿ä´Â ¾ø½À´Ï´Ù¸¸, ÁöÁ¤ÇØ µÎ´Â °ÍÀ» ÃßõÇÕ´Ï´Ù (VALUES ÀÇ ±âº»°ªÀÇ Ä÷³¸íÀº PostgreSQL ¾È¿¡¼ column1,column2 ¿Í °°ÀÌ µË´Ï´Ù. ±×·¯³ª, ´Ù¸¥ µ¥ÀÌÅͺ£À̽º ½Ã½ºÅÛ¿¡¼´Â ´Ù¸¦Áöµµ ¸ð¸¨´Ï´Ù).
VALUES ¸¦ INSERT Áß(¾È)¿¡¼ »ç¿ëÇÏ´Â °æ¿ì´Â, °ªÀÇ ÇüŰ¡ »ðÀÔó Ä÷³ÀÇ µ¥ÀÌÅÍ Å¸ÀÔ¿¡ ÀÚµ¿º¯¿ªµË´Ï´Ù. ±× ÀÌ¿ÜÀÇ ¹®¸Æ¿¡¼ »ç¿ëÇÏ·Á¸é , ¿Ã¹Ù¸¥ µ¥ÀÌÅÍÇüÀ» ÁöÁ¤ÇÒ Çʿ䰡 ÀÖÀ»Áöµµ ¸ð¸¨´Ï´Ù. ±× Ç׸ñÀÌ ¸ðµÎ ¸®ÅÍ·² »ó¼öÀÎ ÀοëµÇ¾ú´Ù¸é, ÃÖÃÊÀÇ °ª¿¡¸¸ ÇüŸ¦ ÁöÁ¤ÇØ µÎ¸é ÃæºÐÇÕ´Ï´Ù.
SELECT * FROM machines
WHERE ip_address IN (VALUES('192.168.0.1'::inet), ('192.168.0.10'), ('192.168.1.43'));
Tip: IN ¸¦ ½ÃÇèÇÏ°í ½Í´Ù¸é, À§¿Í °°Àº VALUES Äõ¸®¹®À» »ç¿ëÇÏ´Â °Íº¸´Ùµµ IN ÀÇ ½ºÄ®¶ó(scalar) ¸®½ºÆ® Çü½ÄÀ» »ç¿ëÇÏ´Â ÆíÀÌ ÁÁÀ» °ÍÀÔ´Ï´Ù. ½ºÄ®¶ó(scalar) ¸Þ¼ÒµåÀÇ ¸®½ºÆ® ÂÊÀÌ ±â¼ú·®ÀÌ ÁÙ¾îµé°í, ´ëºÎºÐÀº º¸´Ù È¿À²ÀûÀÌ µË´Ï´Ù.