MySQL Äõ¸® Áú¹® Á» µå¸³´Ï´Ù.

Midabo   
   Á¶È¸ 3745   Ãßõ 0    

ALTER TABLE `db`.`table` CHANGE COLUMN `DIV_CD` `DIV_CD` INT NULL DEFAULT NULL ;


위 쿼리를 이용해서 DIV_CD 컬럼을 varchar(10) 에서 integer 로 바꾸려고 합니다.


1~5 사이의 숫자중 하나로 레코딩이 되어있는데, 간혹 들어있는 '-' 때문에 쿼리 에러가 나는데요


'-' 는 의미없는 데이터여서 null 처리해도 됩니다.


에러를 무시하고 컬럼 속성을 변경할 수 있는지요


ªÀº±Û Àϼö·Ï ½ÅÁßÇÏ°Ô.
ȸ¿øK 2016-02
update¸¦ Çؼ­ '-'¸¦ ¾÷¾Ö¹ö¸° ÈÄ¿¡, alter tableÀ» ÇÏ½Ã´Â°Ô ÆíÇÒ °Í °°Àºµ¥¿ä?
¾Æ·¡±¸¹® ½ÇÇàÇؼ­ '-' Á¦°ÅÈÄ¿¡ º¯°æÇغ¸¼¼¿ä.
select replace(div_cd, '-', '') from `db`.`table`;
     
Midabo 2016-02
¹®Á¦´Â ÀáÀçÀûÀÎ ´Ù¸¥ char °ªÀÌ Á¸ÀçÇÑ´Ù´Â °ÍÀä
·¹Äڵ尡 ³Ê¹« ¸¹¾Æ¼­ ÀÏÀÏÀÌ Ã£±â°¡ ¾î·Æ½À´Ï´Ù.

ÀÌ°æ¿ì ¼ýÀÚ°¡ ¾Æ´Ñ°É ¼ýÀÚ·Î º¯°æÇÒ ¼ö ÀÖÀ»±î¿ä?
±èµ¿¼öP 2016-02
ÀÏ´Ü db¹é¾÷ ÇϽðí (¹®Á¦»ý±â¸é ·Ñ¹éÇؾßÇÏ´Ï...)

update `db`.`table` set `DIV_CD`=cast(`DIV_CD` as signed)  where 1=1

³¯¸®½Ã¸é ¼ýÀÚ ¾Æ´Ñ°Ç ÁË´Ù 0À¸·Î ¹Ù²î¾î¼­ µé¾î°©´Ï´Ù. (data°¡ truncate µÈ´Ù°í warningÀÌ ¶ß±ä Çϴµ¥, °Á ¹«½ÃÇÕ´Ï´Ù)
±×´ã¿¡ ÇÊ¿ä¿¡ µû¶ó 0ÀÎ Ç׸ñÀ» null ·Î º¯°æ ÇϽðí... ±×´ÙÀ½¿¡ alter·Î Ä÷³ ŸÀÔ º¯°æÇϼ¼¿ä.
     
Midabo 2016-02
¾öÁöô!
°¨»çÇÕ´Ï´Ù.
¹èº´·Ä 2016-02
Èì.. SQL ¹®Àǵµ ÅëÇÏ´Â 2CPU...
Çϵå¿þ¾î »çÀÌÆ®ÀÎÁÙ ¾Ë¾Ò´õ´Ï... ^&^;;
¹ÚÀÎÈ£ 2016-02
Á¦°¡ ¿©·¯ DB¸¦ »ç¿ëÇÏ´Ùº¸´Ï
MySQL¿¡¼­µµ Á¤±ÔÇ¥Çö½ÄÀ¸·Î replace°¡ µÇ´Â ÁÙ ¾Ë¾Ò´Âµ¥ ±×·¸°Ô ¾ÈµÅ³×¿ä.
REGEXP¸¦ ÀÌ¿ëÇØ ¹®ÀÚ°¡ Æ÷ÇÔµÈ ¿¹¿Ü »Ì¾Æ³»
replace¸¦ ¿©·¯¹ø ¼öÇàÇÏ´Â °ÍÀÌ ÁÁÀ» µí ÇÕ´Ï´Ù.


QnA
Á¦¸ñPage 4071/5682
2015-12   1489709   ¹é¸Þ°¡
2014-05   4953203   Á¤ÀºÁØ1
2017-03   3744   °³¹ß25³â
2014-04   3744   ±è°Ç¿ì
2015-10   3744   À©µµ¿ì10
2020-07   3744   DDDIE
2014-07   3744   user
2017-07   3744   ºÐ´ç±èµ¿¼ö
2016-09   3744   °ÉÀνÅȫö
2019-08   3744   Çϸó
2017-10   3744   Æ丣¼¼¿ì½º
2016-05   3744   stone92±è°æ¹Î
2023-10   3744   ÇãÀα¸¸¶Æ¾
2014-07   3744   Å×µ¹¾ÆÀÌ
2016-01   3744   ¿À¼º±â
2015-02   3744   À©µµ¿ì10
2017-10   3744   ¹ÚÁ¾´ë
2014-04   3744   ºü½Ã¿Â
2018-08   3744   ºü½Ã¿Â
2016-05   3744   Áöµµ¸®
2017-09   3744   ¹ÙºÎÆÃÀÌ
2013-12   3744   °¡ºü·Î±¸³ª