| Q.1 |
Column
size º¯°æÀ» ÇϱâÀ§ÇØ ALTER TABLE STORE ALTER SND_FN SET DATA TYPE VARCHAR
(11).Áï SND_FN COLUMN Å©±â´Â 11·Î ¸¸µé·Á°í Çϴµ¥ ´ÙÀ½ÀÇ ¿À·ù°¡ ³ª´Â±º¿ä..SQL0104N
An unexpected token "ALTER TABLE STORE ALTER SND_FN SET
DATA TY" was found following "BEGIN-OF-STATEMENT".
Expected tokens may include: "". SQLSTATE=42601.version¿¡
µû¶ó Áö¿øÀÌ µÇÁö ¾Ê´Â´Ù¸é, ¾î¶»°Ô ÇÏ´Â°Ô ÁÁÀºÁö ¾Ë·ÁÁֽñ⠹ٶø´Ï´Ù. tableÀ» ´Ù½Ã ¸¸µé¾î¾ß ÇÏ´ÂÁö....
|
| Q.2
|
DATEÇü¿¡
ÀԷ¹æ¹ýÀÌ ±Ã±ÝÇÕ´Ï´Ù.
Ä÷³ÀÇ Çü½ÄÀ» DATE·Î Àâ¾Ò´Âµ¥, insert into¿¡¼ ¾î¶»°Ô °ªÀ» ÀÔ·ÂÇØ¾ß ÇÏ´ÂÁö ¸ð¸£°Ú³×¿ä.
insert into test (BirthDay) values (???)
2000.10.17
|
|
Q.3 |
A,B
µÎ°³ÀÇ Å×ÀÌºí¿¡¼.. A¿¡´Â Á¸ÀçÇϰí B¿¡´Â ÀÖÁö¾ÊÀº °Í¸¸À» selectÇÏ·Á°í ÇÕ´Ï´Ù.
sql Ã¥À» Âü°í Çß´õ´Ï.. minus ¶ó´Â ÇÔ¼ö°¡ ÀÖ´õ±º¿ä¡¦
2000.5.20
|
| Q.4
|
¿©·¯°³ÀÇ
Å×À̺íÀ» full outer joinÇÒ·Á¸é ¾î¶»°Ô ÇØ¾ß Çϳª¿ä? À½.. 7°³ Á¤µµÀÇ Å×À̺íÀ» Á¶ÀÎÇÒ·Á±¸ Çϴµ¥¿¡¿ä..
¿¬¼ÓÀûÀ¸·Î ¿©·¯°³ Å×À̺íÀ» joinÇÏ´Â ¹ýÁ» ¾Ë·ÁÁֽñ⠹ٶø´Ï´Ù.
2000.10.11
|
| Q.5 |
ÇöÀ糯¥¿¡¼ 30ÀÏÀ̳» µ¥ÀÌÅ͸¦
¾ò°í½Í½À´Ï´Ù.
ÇöÀ糯¥(values(current date)) - Çʵ尪( 2000-10-01 ) <= 30 À» ½ÇÇàÇß½À´Ï´Ù.
±×·±µ¥ ÀÌ·¸°Ô ÇÏ¸é ¸Â´ÂÁÙ ¾Ë¾Ò´Âµ¥ °£ÀÌ µ¥ÀÌÅ͸¦ ³Ö°í ÇöÀ糯¥(DATE( 2001-01-10 ) - Çʵ尪(
2000-12-25 ) <= 30 À» ½ÇÇàÇß½À´Ï´Ù.
±×·¯¸é »ó½ÄÀûÀ¸·Î 2000-12-01ºÎÅÍ 2001-01-09 ±îÁöÀÇ µ¥ÀÌÅ͸¦ ¾òÀ» ÁÙ ¾Ë¾Ò´Âµ¥¿ä.
2000³âµµ¿¡ ÇØ´çµÇ´Â Àüü µ¥ÀÌÅ͸¦ ¾ò´õ±º¿ä ±â°£¾ÈÀÇ µ¥ÀÌÅ͸¦ ¾òÀ¸·Á¸é ¾î¶»°Ô ÇØ¾ß Çϳª¿ä
2000.10.16

|
| Q.6 |
ÇʵåÀÇ
ÀÚ¸®¼ö º¯°æ°ú Ãß°¡ µîÀº ¾Ë°Ú´Âµ¥ Not Null¿É¼Çµµ Ãß°¡ÇÒ ¼ö ÀÖ³ª¿ä?
2000.10.30

|
| Q.7 |
db2¿¡¼ÀÇ case ¹®°ú group by Àý »ç¿ë¹ýÁ»
¾Ë·ÁÁÖ¼¼¿© .
Oracle °ú Ms-Sql¸¸ ½áº» ÇÁ·Î±×·¡¸ÓÀÔ´Ï´Ù.
±×·±µ¥ À̹ø¿¡ db2·Î ÇÁ·Î±×·¥À» ÇØ¾ßÇϴµ¥ Çü½ÄÀ» Àß ¸ô¶ó¼¿© .
¾Æ·¡´Â Á¦°¡ MS-Sql7.0¿¡¼ ÁÖ·Î ¾²´Â Sql ¹®ÀåÀε¥ db2¿¡¼´Â ¾î¶»°Ô ¹Ù²ã¾ß ÇÏ´ÂÁö ¸ð¸£°Ú½À´Ï´Ù.
select count(*) cnt,
case when SUBSTRING(PEOPNO, 7, 1) = 1
Then MAN
when SUBSTRING(PEOPNO, 7, 1) = 2
Then WOMAN
end MW
from Å×À̺í¸í
group by
case
when SUBSTRING(PEOPNO, 7, 1) = 1
Then MAN
when SUBSTRING(PEOPNO, 7, 1) = 2
Then WOMAN
end |
|
Table Data
----------
7402081000000
7612122000000
7812021000000
7403152000000
7401021000000
|
|
°á°ú°ª
Ms-SqlÀÇ °á°ú°ª
-------------------
MW CNT
---------- --------
MAN 3
WOMAN 2
-------------------
|
CONTINUE
|
|
2000.10.13

|
| Q.8
|
1. MS-SQL ¿¡¼ »ç¿ëÇÏ´ø SELECT
TOP 10 * FROM SomeTable°ú °°ÀÌ TOP±¸¹®À» »ç¿ëÇÏ°í ½ÍÀºµ¥ ±¸¹® ¿À·ù°¡ ³³´Ï´Ù. ¾î¶»°Ô
ÇØ¾ß Çϳª¿ä?
2. ÀÌ¿Í °°Àº ±¸¹®¿¡ ´ëÇÑ ¼³¸íÀ» ÂüÁ¶Çϱâ À§Çؼ´Â µµ¿ò¸» ÆÄÀÏ °°Àº °ÍÀÌ ¾ø´ÂÁö¿ä? MS-SQLÀÇ °æ¿ì
BooksOnlineÀ̶ó´Â °É ÆÄÀÏ·Î Áö¿øÇϴµ¥ IBM db2µµ ÀÖ´Â°Í °°À¸³ª °Ë»ö±â´ÉÀÌ ¸ÔÅëÀ̳׿±...(ºó
ÆäÀÌÁö°¡ °á°ú.. -_-;)
3. Å×ÀÌºí »ý¼º ÀÌÈÄ Á¦¾î ¼¾ÅÍ¿¡¼ 'º¯°æ'À¸·Î Ä÷³ ¸íÀ» º¯°æÇÏ°í ½Í½À´Ï´Ù¸¸ º¯°æÀ» ´©¸£¸é ÀԷ¶õÀÇ ±Û¾¾°¡
ȸ»öÀ¸·Î µÇ¾î ÀÖ¾î¼ º¯°æÀ» ÇÒ ¼ö°¡ ¾ø½À´Ï´Ù..
2000.8.10
|
A.1 ¹öÀü ¹®Á¦°¡ ¾Æ´Ï¶ó command¸¦ À߸øÄ¡¼Ì¾î¿ä. ¾Æ·¡¿¡¼ ¾î¶² ºÐÀÌ ¸»¾¸ÇϽŴë·Î sql0104¿¡·¯´Â
¸í·É¹®À» À߸øÃÆÀ» ¶§ ³ª¿Â´ä´Ï´Ù. ´ÙÀ½°ú °°ÀÌ ÀÔ·ÂÇÏ½Ã¸é µË´Ï´Ù..ALTER TABLE STORE ALTER column
SND_FN SET DATA TYPE VARCHAR (11).Áï, alter column À̶ó°í ÀÔ·ÂÇÏ¼Å¾ß µÇ´Âµ¥
columnÀÌ ºüÁ³³×¿ä.
Àá±ñ!
ALTER TABLE tablename ALTER COLUMN [column-alteration]
[column-alteration]
column-name SET DATA TYPE VARCHAR(integer)
CHARACTER VARYING
CHAR VARYING
1. Fixpak3 (3/98)¿¡ µµÀÔµÊ.
2. ±âÁ¸ÀÇ VARCHAR Ä÷³ÀÇ ±æÀ̸¦ Áõ°¡ÇÔ.
3. integer °ªÀº 4000±îÁö »ç¿ëÇÔ.
4. Ä÷³ÀÇ º¯°æÀº ¸ðµç Ä÷³ÀÇ ÃÑ Byte¼ö°¡ Page SizeÀÇ ÃÖ´ë Record Size¸¦
ÃʰúÇØ¼´Â ¾ÈµÊ. (SQLSTATE 54010)
5. ¸¸¾à Ä÷³ÀÌ Unique Constraint ¶Ç´Â Index¿¡ »ç¿ëµÇ´Â °æ¿ì, »õ·Î¿î Size´Â
Unique Constraint ¶Ç´Â IndexÀÇ Ä÷³µéÀÇ ±æÀÌÀÇ ÇÕ°è°¡ 1024 Byte¸¦ Ãʰú
ÇØ¼´Â ¾ÈµÊ. (SQLSTATE 54008)
Âü°í·Î, DB2 UDB for OS/390Àº 254 Byte, DB2 for OS/400Àº 2000
Byte,
Oracle 7.3˼ 255 Byte, SQL Server 7˼
900 Byte, Sybase 10˼ 256 Byte,
Informix 7.2´Â 120 Byte¸¦ ÃʰúÇØ¼´Â ¾ÈµÊ
|
A.2 DATE ŸÀÔÀº ³â, ¿ù, ÀÏ ¼¼ºÎºÐ °ªÀ¸·Î Á¤Àǵ˴ϴÙ.. -> 1991-10-27
µû¶ó¼ insert into test (BirthDay) values ( 1972-05-10 ) ÇÏ½Ã¸é µË´Ï´Ù...
A.3 DB2¿¡´Â except, except all ¶ó´Â ±â´ÉÀÌ ÀÖ½À´Ï´Ù. EXCEPT ¿¬»êÀÚ´Â
TABLE2°¡ ¾Æ´Ï¶ó TABLE1¿¡ ÀÖ´Â ¸ðµç ÇàÀ» Æ÷ÇÔÇÏ°í ¸ðµç Áߺ¹ ÇàÀ» Á¦°ÅÇÔÀ¸·Î½á °á°ú Å×À̺íÀ» ²ø¾î³À´Ï´Ù.
EXCEPT¿Í ALLÀ» °°ÀÌ »ç¿ëÇϸé(EXCEPT ALL), Áߺ¹ ÇàÀº Á¦°ÅµÇÁö ¾Ê½À´Ï´Ù
Except : A¿¡´Â ÀÖ°í B¿¡´Â ¾ø´Â °Í. Áߺ¹µÈ °ÍÀÌ Á¦°ÅµË´Ï´Ù.
Except All : Except¿Í µ¿ÀÏÇϳª Áߺ¹µÈ °ÍÀÌ Æ÷ÇԵ˴ϴÙ.
SELECT ID, NAME FROM STAFF WHERE SALARY > 21000
EXCEPT
SELECT ID, NAME FROM STAFF WHERE JOB='Mgr' AND YEARS < 8
ÀÌ·¸°Ô Çϸé $21,000 ÀÌ»óÀÇ ±Þ¿©¸¦ ¹ÞÀ¸³ª °ü¸®ÀÚ°¡ ¾Æ´Ï°í
8³â ÀÌ»ó ±Ù¹«ÇÑ ¸ðµç Á÷¿øÀÇ À̸§À»
¸®ÅÏÇÕ´Ï´Ù.
|
A.4 full outer joinÀ» ÇÏ¸é ÆÛÆ÷¸Õ½º¿¡ ¸¹Àº ¿µÇâÀ» ÁÖ¾î¼ Àß »ç¿ëÇÏÁö´Â ¾ÊÁö¸¸
»ç¿ëÇϽ÷Á¸é, select A.col1, A.col2, B.col3, B.col4, C.col5, C.Col6 from
A full outer join B on A.col1 = B.col1 full outer join C on A.col2=
C.col5 ¹°·Ð Á¶ÀÎ ¼ø¼¶óµç°¡ Á¶ÀÎ Ä÷³µî¿¡ ´ëÇØ ¸íÈ®ÇÏ°Ô ¸í½Ã ÇÏ¼Å¾ß °ÚÁÒ
A.5 db2 "select * from Å×À̺í¸í where ³¯Â¥Ä÷³¸í > current date
- 30 day À§°¡ °°ÀÌ ÇØº¸½Ã±â ¹Ù¶ø´Ï´Ù.
A.6 Ä÷³ÀÇ Not NULL ¿É¼ÇÀÇ °æ¿ì´Â ³ªÁß¿¡ ¼öÁ¤ÀÌ ºÒ°¡´É ÇÕ´Ï´Ù.
Å×À̺íÀ» ¸¸µå½Ã¸é¼
CREATE TABLE PERS (ID
SMALLINT NOT NULL,
NAME VARCHAR(9),
DEPT SMALLINT WITH DEFAULT 10)
|
¿Í °°ÀÌ Á¤ÀÇÇØ ÁÖ½Ã¸é µË´Ï´Ù.
A.7 ¾Æ·¡¿Í °°ÀÌ ÇÏ½Ã¸é µË´Ï´Ù..
select count(*) cnt,
case when SUBSTR(PEOPNO, 7, 1) = '1'
Then 'MAN'
when SUBSTR(PEOPNO, 7, 1) = '2'
Then 'WOMAN'
end MW
from Å×À̺í¸í
group by
case
when SUBSTR(PEOPNO, 7, 1) = '1'
Then 'MAN'
when SUBSTR(PEOPNO, 7, 1) = '2'
Then 'WOMAN'
end
|
A.8
1. MS-SQL¿¡¼ »ç¿ëÇϽôø syntax¸¦ ¹Ù·Î »ç¿ëÇÏ½Ç ¼ø ¾ø½À´Ï´Ù. µ¿ÀÏÇÑ °á°ú¸¦ ¾ò±â À§Çؼ´Â ´ÙÀ½°ú
°°Àº ±¸¹®À» »ç¿ëÇϽʽÿÀ. select * from Some Table ......... fetch first
10 rows only
2. [½ÃÀÛ]-[ÇÁ·Î±×·¥]-[IBM DB2]-[Á¤º¸] ¹Ø¿¡ Á¤º¸¼¾ÅÍ¿¡ °¡½Ã¸é ¿Â¶óÀÎ ¸Þ´º¾ó°ú °¢Á¾ ¼ÀûµéÀ» º¸½Ç
¼ö ÀÖ½À´Ï´Ù.
3. Å×ÀÌºí »ý¼º ÀÌÈÄ Á¦¾î ¼¾ÅÍ¿¡¼ 'º¯°æ'À¸·Î Ä÷³¸íÀ» ¹Ù²Ù½Ç ¼ö ¾ø½À´Ï´Ù.
4. DB2´Â v7 ºÎÅÍ »ç¿ëÀÚ¿¡°Ô Å×ÀÌºí¿¡¼ °¢ Çà¿¡ ´ëÇØ °íÀ¯ ¼ýÀÚ °ªÀ» »ý¼ºÇϵµ·Ï ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î,
ID Ä÷³Àº °íÀ¯ÇÑ ±âº» Ű °ª »ý¼º¿¡ »ç¿ëµÉ ¼ö ÀÖ½À´Ï´Ù. »ç¿ëÀÚ´Â ´Ù¸¥ RDBMS º¥ ´õ¿¡¼ DB2·Î ID
Ä÷³À» »ç¿ëÇÏ´Â ÀÀ¿ëÇÁ·Î±×·¥À» À̵¿½Ãų ¼öµµ ÀÖ½À´Ï´Ù. DB2 UDB v6 ¿¡¼´Â identity columnÀ»
¸¸µå´Â °ÍÀÌ ºÒ°¡´ÉÇÕ´Ï´Ù. row ¼ö¸¦ ¾Ë°í ½ÍÀ¸½Ã¸é count functionÀ» »ç¿ëÇÏ½Ã¸é µË´Ï´Ù.
ex) db2 select count(*) from table_name
Àá±ñ!
FETCH SIZE
1. ¸®ÅϵǴ µ¥ÀÌŸÀÇ ¾ç¿¡ Á¦ÇÑÀ» µÒ.
2. Á»´õ È¿°úÀûÀÎ ¾×¼¼½º ¹æ¹ýÀ» »ç¿ëÇÔÀ¸·Î½á, ¼º´ÉÀ» Çâ»ó½ÃÅ´.
3. FETCH FIRST k ROWS ONLY
- Fixpak3 (3/98)¿¡ µµÀÔµÊ.
- ÃßÃâÇÒ RowÀÇ ÃÖ´ë°ªÀ» ¼³Á¤.
- k RowÀÌ»óÀÇ ¼ö´Â ÃßÃâµÇÁö ¾Ê½¿.
- OPTIMIZE FOR n ROWS°¡ ¾ø´Â °æ¿ì, Result TableÀÇ ¸ðµç Row°¡
ÃßÃ⠵Ǵ °ÍÀ¸·Î °¡Á¤µÊ. ¸¸¾à ÁöÁ¤ÇÏ´Â °æ¿ì, ÃßÃâÇÑ RowÀÇ ¼ö°¡ nÀ» ÃʰúÇÏÁö ¾ÊÀ» °ÍÀ̶ó°í
°¡Á¤ÇÔ. nÀº Blocked CursorÀÇ ¼º´ÉÀ» Çâ»ó½Ã۱â À§ÇØ Communication Buffer
SizeÀÇ Àû´çÇÑ °ªÀ» °áÁ¤ÇÔ. ±×·¯³ª ÀÌÀýÀº FetchµÉ RowÀÇ ¼ö¸¦ Á¦ÇÑÇÏÁö´Â ¾ÊÀ¸¸ç,
OPTIMIZER FOR n ROWS´Â n RowÀÇ ¼ö ÀÌ»óÀ» ÃßÃâ ÇÏÁö ¾Ê´Â ´Ù¸é, ¼º´ÉÀ»
Çâ»ó½Ãų ¼ö ÀÖ°í, n RowÀÇ ¼ö ÀÌ»óÀ» ÃßÃâÇÑ´Ù¸é, ¼º´ÉÀ» ÀúÇϽÃÅ´.
- k°ªÀÌ Å©°í, n Row ´ÙÀ½¿¡ ´ëÇØ¼´Â ´À·ÁÁú¼ö ÀÖ´Ù ÇÏÁö¸¸ óÀ½ n Row¸¦ ºü¸£°Ô °¡Á®¿À°íÀÚ
ÇÏ´Â °æ¿ì, µÎ °ªÀ» ÁöÁ¤ÇÔ. Communication Buffer´Â n°ú kº¸´Ù ´õ ÀÛÀº °ªÀ»
±âÁØÀ¸·Î »ý¼ºµÊ.
4. (¿¹)
SELECT EMPNAME, SALARY FROM EMPLOYEE
ORDER BY SALARY DESC
FETCH FIRST 100 ROWS ONLY
OPTIMIZE FOR 20 ROWS
|
|