sql 가능할지 질문입니다. (재정렬 쿼리)
본문
3개의 데이터가 테이블 속에 있습니다.
idx는 순서대로 1,2,3 으로 입력되어있고요
거기서 idx2번인 데이터를 지우면 idx3이 2번이 되게끔 할 수 있을까요?
ㅠㅠ
도움좀 부탁드립니다.
답변 2
SELECT idx FROM table WHERE idx = '5';
DELETE FROM table WHERE idx = '5'
UPDATE SET idx = idx - 1 FROM table WHERE idx > 5
이런식으로 삭제 후 삭제 한 idx의 값보다 위에 있는 값들을 하나씩 마이너스 해주면 될 듯 하네요. !-->
랭킹 뽑는가 보네요.
랭킹을 뽑을때 rownum을 처리하면 됩니다.(몇번째 줄인지 추가 정보)
검색하니 아래글이 위에 있네요. 쉽게 정리되어 있어서 첨부드립니다.
https://rampart81.github.io/post/mysql_get_row_position/
답변을 작성하시기 전에 로그인 해주세요.