MySQL 테이블 행번호 자동 채우는 방법을 알고 싶습니다. 0 3 3,315

by 지후 [MySQL] 번호 자동 채우기 [2016.01.26 13:37:18]


MySQL 테이블 행번호 자동 채우는 방법을 알고 싶습니다.

테이블명 : TEST_TABLE

ID   | 품목 | 가격 | 번호
4    | 콘칩 | 300  |
25  | 칸쵸 | 300  |
3    | 콘칩 | 300  |
11  | 칸쵸 | 300  |

이렇게 구조가 되어있습니다. 아래와 같이 자동으로 테이블에 ID 번호순대로 자동으로 채워주고 싶습니다.

ID   | 품목 | 가격 | 번호
4    | 콘칩 | 300  |  2
25  | 칸쵸 | 300  |  4
3    | 콘칩 | 300  |  1
11  | 칸쵸 | 300  |  3

문법을 예를 들어서 설명해주시면 감사하겠습니다.
( 예 : "SELECT * FROM TEST_TABLE WHERE 번호=자동채우기" )

by 아발란체 [2016.01.26 14:01:40]
CREATE TABLE TEST(
  uid int UNSIGNED,
  name VARCHAR(20)
);

INSERT INTO TEST(name) VALUES('홍길동');
INSERT INTO TEST(name) VALUES('고길동');

SELECT * FROM TEST;

SET @CNT := 0;
UPDATE TEST SET uid = @cnt := @cnt + 1;

SELECT * FROM TEST;

 


by 지후 [2016.01.26 14:36:52]

이해가 안되서요.. mysql 인가요?
예) UPDATE TEST_TABLE SET 번호=자동채우기
이런식 구문으로 설명 다시 부탁드립니다.


by 아발란체 [2016.01.26 15:15:53]

네 MySQL입니다.

참고용으로 드린 SQL입니다.

위 단서로 조회에 대입하면,

SET @CNT := 0; 를 먼저 실행하시고,

SELECT T.*, @cnt := @cnt + 1 FROM TEST_TABLE T  ORDER BY id ASC 식으로 기술하시면 될 것 같습니다.

 

 

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입