본문 바로가기
MySql

MySQL : select 문에서 임시 열 자동 증가

by 베이스 공부 2021. 1. 5.
반응형

MySQL을 사용하여 select 문에서 임시 열을 만들고 자동으로 증가시키는 방법은 무엇입니까?

지금까지 내가 가지고있는 것은 다음과 같습니다.

SET @cnt = 0;
SELECT
    (@cnt =@cnt + 1) AS rowNumber,
    rowID
FROM myTable
WHERE CategoryID = 1

다음을 반환합니다.

+++++++++++++++++++++
+ rowNumber | rowID +
+++++++++++++++++++++
+  (NULL)   |   1   +
+  (NULL)   |   25  +
+  (NULL)   |   33  +
+  (NULL)   |   150 +
+  (NULL)   |   219 +
+++++++++++++++++++++

하지만 다음이 필요합니다.

+++++++++++++++++++++
+ rowNumber | rowID +
+++++++++++++++++++++
+  1        |   1   +
+  2        |   25  +
+  3        |   33  +
+  4        |   150 +
+  ...      |   ... +
+++++++++++++++++++++

 

해결 방법

 

그러면 3 이있는 연속 행 번호가 제공됩니다.

SELECT
    (@cnt := @cnt + 1) AS rowNumber,
    t.rowID
FROM myTable AS t
  CROSS JOIN (SELECT @cnt := 0) AS dummy
WHERE t.CategoryID = 1
ORDER BY t.rowID ;

결과

 

참조 페이지 https://stackoverflow.com/questions/15930514

 

 

반응형

댓글