채택완료

g5_menu 테이블 me_code 테이블에 적힌 숫자 처음 부분 숫자를 일괄적으로 1 더한 숫자로 바꾸기?

10    --> 20

1010 --> 2010

1020 --> 2020
 

20    --> 30

2010 --> 3010

2020 --> 3020

 

https://sir.kr/qa/172337 응용하면 될 것도 같은데, 

초보라 응용력이 부족해서...^^;

|

답변 4개 / 댓글 1개

채택된 답변
+20 포인트
2017-04-12 (수) 07:58:41

UPDATE g5_menu SET me_code = me_code + 10 WHERE length(me_code) = 2

4자리면

UPDATE g5_menu SET me_code = me_code + 1000 WHERE length(me_code) = 4

쿼리를 잘못 적었네요. 다른분이 댓글을 달아서 수정이 안되네요.


답변 주신 두 분 모두 감사합니다. 

2017-04-12 (수) 06:53:18

2자리면

UPDATE g5_menu SET me_code = me_code + 10 WHERE length(10) = 2

4자리면

UPDATE g5_menu SET me_code = me_code + 1000 WHERE length(10) = 4

이렇게 하면 되지 않을까요 

답변에 대한 댓글 1개

이거는 두자리 일때다 4자리 일때다 가 정확희 명시가 안되죠. 그리고 메뉴 같은 경운...
데이터 베이스에 수정을 해버리면.. 질문자 님의 질문에 맞게..... 안되죠
디비에 넣어서 수정을 할꺼면.. 애초에 앞자리에서 1을 더할필요가 .. 있을까요...??

만약 

변수가 1010 이라고 치면

$변수 = '1010';

<?

if(strlen($변수) == 4){

$변수 = $변수+1000;

}

?>

만약 

변수가 10 이라고 치면

$변수 = '10';

<?

if(strlen($변수) == 2){

$변수 = $변수+10;

}

?>

이렇게 자릿수를 구해서 

2자리면 10의 자리를 더하고 4자리면 1000의 자리를 더하면 될듯합니다.

숫자라면요

답변을 작성하려면 로그인이 필요합니다.