CAST関数�より値�型を他�型�変����。��動的�引数(?)やNULL値�型を与���。
CASTã?®å¼?ã?¯å¼?ã‚’ç½®ã??ã?“ã?¨ã?Œã?§ã??ã‚‹å ´æ‰€ã?ªã‚‰ã?©ã?“ã?«ã?§ã‚‚ç½®ã??ã?“ã?¨ã?Œã?§ã??ã?¾ã?™ã€‚
CAST ( [ � | NULL | ? ] AS データ型)
å¼?ã‚’ã‚ャストã?™ã‚‹å…ˆã?®ãƒ‡ãƒ¼ã‚¿åž‹ã?®ã?“ã?¨ã‚’目標型ã?¨ã?„ã?„ã?¾ã?™ã€‚ã‚ャストã?—よã?†ã?¨ã?—ã?¦ã?„ã‚‹å¼?ã?®ãƒ‡ãƒ¼ã‚¿åž‹ã?®ã?“ã?¨ã‚’æº?泉型ã?¨ã?„ã?„ã?¾ã?™ã€‚
Types | S |
I |
B |
D |
R |
D |
F |
C |
V |
L |
C |
V |
L |
C |
B |
D |
T |
T |
X |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
SMALLINT | Y | Y | Y | Y | Y | Y | Y | Y | - | - | - | - | - | - | - | - | - | - | - |
INTEGER | Y | Y | Y | Y | Y | Y | Y | Y | - | - | - | - | - | - | - | - | - | - | - |
BIGINT | Y | Y | Y | Y | Y | Y | Y | Y | - | - | - | - | - | - | - | - | - | - | - |
DECIMAL | Y | Y | Y | Y | Y | Y | Y | Y | - | - | - | - | - | - | - | - | - | - | - |
REAL | Y | Y | Y | Y | Y | Y | Y | - | - | - | - | - | - | - | - | - | - | - | - |
DOUBLE | Y | Y | Y | Y | Y | Y | Y | - | - | - | - | - | - | - | - | - | - | - | - |
FLOAT | Y | Y | Y | Y | Y | Y | Y | - | - | - | - | - | - | - | - | - | - | - | - |
CHAR | Y | Y | Y | Y | - | - | - | Y | Y | Y | - | - | - | Y | - | Y | Y | Y | - |
VARCHAR | Y | Y | Y | Y | - | - | - | Y | Y | Y | - | - | - | Y | - | Y | Y | Y | - |
LONG VARCHAR | - | - | - | - | - | - | - | Y | Y | Y | - | - | - | Y | - | - | - | - | - |
CHAR FOR BIT DATA | - | - | - | - | - | - | - | - | - | - | Y | Y | Y | Y | Y | - | - | - | - |
VARCHAR FOR BIT DATA | - | - | - | - | - | - | - | - | - | - | Y | Y | Y | Y | Y | - | - | - | - |
LONG VARCHAR FOR BIT DATA | - | - | - | - | - | - | - | - | - | - | Y | Y | Y | Y | Y | - | - | - | - |
CLOB | - | - | - | - | - | - | - | Y | Y | Y | - | - | - | Y | - | - | - | - | - |
BLOB | - | - | - | - | - | - | - | - | - | - | - | - | - | - | Y | - | - | - | - |
DATE | - | - | - | - | - | - | - | Y | Y | - | - | - | - | - | - | Y | - | - | - |
TIME | - | - | - | - | - | - | - | Y | Y | - | - | - | - | - | - | - | Y | - | - |
TIMESTAMP | - | - | - | - | - | - | - | Y | Y | - | - | - | - | - | - | Y | Y | Y | - |
XML | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | Y |
変æ?›ã?Œæœ‰åйã?ªã‚‰ã€?CASTã?¯å?¯èƒ½ã?§ã?™ã€‚æº?泉型ã?¨ç›®æ¨™åž‹ã?®é–“ã?®å¤§ã??ã?•ã?®é?žäº’æ?›æ€§ã?¯ã€?実行時ã?«ã‚¨ãƒ©ãƒ¼ã‚’èµ·ã?“ã?™ã?“ã?¨ã?Œã?‚りã?¾ã?™ã€‚
数値型ã?¯ä»–ã?®ã?„ã?‹ã?ªã‚‹æ•°å€¤åž‹ã?«ã‚‚変æ?›ã?§ã??ã?¾ã?™ã€‚ã‚‚ã?—æ•°ã?®å°?数部ã?§ã?¯ã?ªã?„部分を切りæ?¨ã?¦ã?ªã?‘れã?°ã€?変æ?›ã?—ã?Ÿç›®æ¨™åž‹ã?§æ‰±ã?ˆã?ªã?„ã?ªã‚‰ã?°ä¾‹å¤–ã?Œç™ºç”Ÿã?—ã?¾ã?™ã€‚ã‚‚ã?—æº?泉型ã?®å°?数部を目標型ã?§æ‰±ã?ˆã?ªã?„ã?ªã‚‰ã?°ã€?目標型ã?«ã?¦æ‰±ã?ˆã‚‹ã‚ˆã?†æš—黙裡ã?«æº?泉型ã?®å€¤ã?¯åˆ‡ã‚Šæ?¨ã?¦ã‚‰ã‚Œã?¾ã?™ã€‚ã?Ÿã?¨ã?ˆã?°ã€?763.1234ã‚’INTEGERã?«å¤‰æ?›ã?™ã‚‹ã?¨763ã?¨ã?ªã‚Šã?¾ã?™ã€‚
ビット列ã?®åž‹ã?¯ä»–ã?®ãƒ“ット列ã?®åž‹ã?«å¤‰æ?›ã?§ã??ã?¾ã?™ã?Œã€?æ–‡å—列ã?«å¤‰æ?›ã?™ã‚‹ã?“ã?¨ã?¯ã?§ã??ã?¾ã?›ã‚“。 æ–‡å—列ã?®åž‹ã‚’ビット列ã?®åž‹ã?«å¤‰æ?›ã?™ã‚‹ã?¨ã€?目標ã?®ãƒ“ット型ã?®é•·ã?•ã?«ä¼šã?†ã‚ˆã?†ã?«ã€?末尾ã?Œ0ã?§è©°ã‚?られã?¾ã?™ã€‚BLOBåž‹ã?¯ã‚ˆã‚Šé™?定ã?•れã?¦ã?Šã‚Šã€?明示的ã?ªå¤‰æ?›ã‚’å¿…è¦?ã?¨ã?—ã?¾ã?™ã€‚ ã?»ã?¨ã‚“ã?©ã?®å ´å?ˆã€?BLOBåž‹ã?‹ã‚‰ã?¯/ã?¸ã?¯åž‹å¤‰æ?›ã?§ã??ã?¾ã?›ã‚“。
æ—¥/時ã?®å€¤ã?¯ã?„ã?‹ã?ªã‚‹å ´å?ˆã?§ã‚‚TIMESTAMPã?¸/ã?‹ã‚‰åž‹å¤‰æ?›ã?§ã??ã?¾ã?™ã€‚ DATEã?ŒTIMESTAMPã?«åž‹å¤‰æ?›ã?•れã?Ÿå ´å?ˆã€?çµ?æžœã?®TIMESTAMPã?«ã?¦TIMEã?®éƒ¨åˆ†ã?¯å¸¸ã?«00:00:00ã?§ã?™ã€‚ ã‚‚ã?—TIMEã?ŒTIMESTAMPã?«åž‹å¤‰æ?›ã?•れã?Ÿå ´å?ˆã€?çµ?æžœã?®TIMESTAMPã?«ã?¦DATEã?®éƒ¨åˆ†ã?¯ã€?CASTã?Œå®Ÿè¡Œã?•れã?Ÿã?¨ã??ã?®CURRENT_DATEã?®å€¤ã?¨ã?ªã‚Šã?¾ã?™ã€‚ TIMESTAMPã?ŒDATEã?«åž‹å¤‰æ?›ã?•ã‚Œã‚‹å ´å?ˆã€?TIMEã?®éƒ¨åˆ†ã?¯æš—黙裡ã?«åˆ‡ã‚Šæ?¨ã?¦ã‚‰ã‚Œã?¾ã?™ã€‚ TIMESTAMPã?ŒTIMEã?«åž‹å¤‰æ?›ã?•ã‚Œã‚‹å ´å?ˆã€?DATEã?®éƒ¨åˆ†ã?¯æš—黙裡ã?«åˆ‡ã‚Šæ?¨ã?¦ã‚‰ã‚Œã?¾ã?™ã€‚
SELECT CAST (miles AS INT) FROM Flights -- timestampã‚’æ–‡å—列ã?«å¤‰æ?›ã?™ã‚‹ INSERT INTO mytable (text_column) VALUES (CAST (CURRENT_TIMESTAMP AS VARCHAR(100))) -- NULLã‚’é?©åˆ‡ã?ªãƒ‡ãƒ¼ã‚¿åž‹ã?«å¤‰æ?›ã?—ã?ªã?‘れã?°ã?ªã‚‰ã?ªã?„。 SELECT airline FROM Airlines UNION ALL VALUES (CAST (NULL AS CHAR(2))) -- doubleã‚’decimalã?«å¤‰æ?›ã?™ã‚‹ã€‚ SELECT CAST (FLYING_TIME AS DECIMAL(5,2)) FROM FLIGHTS -- SMALLINTã‚’BIGINTã?«å¤‰æ?›ã?™ã‚‹ VALUES CAST (CAST (12 as SMALLINT) as BIGINT)
明示的ã?«ã‚‚暗黙的ã?«ã‚‚ã€?XMLã?®å€¤ã?¯XML以外ã?®å¦‚何ã?ªã‚‹åž‹ã?¸ã‚‚型変æ?›ã?§ã??ã?¾ã?›ã‚“。XML型を文å—列型ã?«ã?™ã‚‹å ´å?ˆã?¯ã€?XMLSERIALIZE 演算å?を使ã?£ã?¦ã??ã? ã?•ã?„。