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

Midabo   
   Á¶È¸ 3787   Ãßõ 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 4093/5688
2014-05   5000578   Á¤ÀºÁØ1
2015-12   1536444   ¹é¸Þ°¡
2016-02   3788   Midabo
2018-03   5648   ÀÌÁ¾Çöoph
2019-05   2605   ¿©ÁÖ³ó¹Î76
2022-01   2689   Âî·Ï
2010-05   6796   °¡ºü·Î±¸³ª
2016-02   4072   izegtob
2016-02   3848   ¼ÛÁÖȯ
2016-02   4787   ÇູÇϼ¼
2017-01   4701   ¹«¾Æ
2018-04   5022   Realwook
2023-08   1951   ¾ØµåÀ¯Àú
2018-04   3672   ½Ã¿ÀÈÅÀÌ
2019-05   4330   »ç½ÄÀÌ
2019-05   3437   ½ÅÀº¿Ö
2010-06   8242   ±è°Ç¿ì
2019-05   6005   ·ù·ù·ù
2023-09   3288   ÃѾËź»ç³ªÀÌ
2016-02   6273   ±è°Ç¿ì
2010-07   7699   Á¤ÀºÁØ1
2017-02   4909   ÇູÇϼ¼