특정 방식으로 필드를 증가시키기 위해 적절한 SQL 스크립트를 수행하는 데 어려움을 겪고 있습니다.mysql에서 고유 증분 값을 수행하는 방법
두 스크립트는 예외가 아니지만 결과에는 아무런 변화가 없습니다.
스크립트 1 :
UPDATE
myTable T1,
(
SELECT id,
(@s:[email protected]+1) AS seq
FROM myTable, (SELECT (@s:=0) AS s) s
WHERE infotext IS NULL ORDER BY grouptext
) T2
SET sequence = seq
WHERE T1.id = T2.id
스크립트 2 :
UPDATE myTable AS target
INNER JOIN (
SELECT supfault_id,
(@s:[email protected]+1) AS seq
FROM myTable, (SELECT (@s:=0) AS s) s
WHERE infotext IS NULL ORDER BY grouptext
) AS ordered ON ordered.id = target.id
SET sequence = seq
무엇을 하시겠습니까? 새 레코드를 삽입 한 후 레코드를 업데이트 하시겠습니까? 또는 마지막 값을 얻은 다음 1 씩 증가시킵니다. –
새로운 열이 추가 된 레코드가있는 테이블이 있습니다. 모든 값은 0으로 설정됩니다. 그리고이 값을 특정 방식으로 증가시켜야합니다. 레코드에는 자체 시퀀스 값이 있습니다. – domino
현재 알파벳순 정렬을 수행하고 뷰에 정렬 된 데이터를 사용해야합니다. 하지만 프런트 엔드에서 알파벳순 정렬을 수행 할 수 없습니다. 장래에 사용자가 순서를 재 지정할 수있는 옵션을 갖게 될 것이기 때문입니다. – domino