테스트 사이트 - 개발 중인 베타 버전입니다

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

sinbi 8년 전 조회 4,032

10    --> 20

1010 --> 2010

1020 --> 2020  

20    --> 30

2010 --> 3010

2020 --> 3020

 

 

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

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

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

답변 4개

채택된 답변
+20 포인트

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

 

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

 

로그인 후 평가할 수 있습니다

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

s
sinbi Expert
8년 전

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

로그인 후 평가할 수 있습니다

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

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개

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

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

g
8년 전

만약 

변수가 1010 이라고 치면

 

$변수 = '1010';

 

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

$변수 = $변수+1000;

}

?>

 

만약 

변수가 10 이라고 치면

 

$변수 = '10';

 

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

$변수 = $변수+10;

}

?>

 

이렇게 자릿수를 구해서 

 

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

 

숫자라면요

로그인 후 평가할 수 있습니다

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

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

로그인