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

Midabo   
   Á¶È¸ 3617   Ãßõ 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 2456/5654
2014-05   4840838   Á¤ÀºÁØ1
2015-12   1385313   ¹é¸Þ°¡
2012-02   5676   ±è°Ç¿ì
2014-03   7121   ¿¹»ó¾Æºü
2016-08   10153   ÀÌÇö±æ
2020-01   1986   ³ªÆÄÀÌ°­½ÂÈÆ
2002-12   10374   ¹Ú±Õ
2005-09   5282   À̽ÂÇö
2008-09   4951   ¼Û¿µ¿À
2012-02   5400   ³ó±¸È²Á¦
2017-08   5388   ½½·¡µå
2015-07   3594   ÇÑÈ¿¼®
2008-09   5013   Àü¸íö
2003-01   11598   ÀÌ»ó¸ñ
2005-09   5285   ÀÌÁ¦È£
2020-01   2860   ÇϾç±î¸Á
2008-10   5441   ±è¿¬¿ë
2017-08   4028   ÀϷиӽºÅ©
2020-01   4879   ÀÌÁöÆ÷Åä
2003-01   11430   ÀÌ°æÁø
2005-09   6008   ÇÔ¹®¼ö
2016-08   4267   Beth