2011-05-01 7 views
1

일부 NFL 팀에 ​​대해 "팀"테이블이있는 DB를 만들고 모든 순위 (NFL로 표시)를 지정 했으므로 해당 특성을 "순위"라고합니다.MySQL- 트리거 업데이트 순위

랭킹이 업데이트되면 다른 모든 트리거가 적절히 업데이트되도록 트리거를 만들고 싶습니다.

그러나 테이블을 반복하는 방법을 찾을 수 없습니다. 예를 들어, 순위 5의 팀이 순위 3으로 이동한다고 가정합니다. 순위 3이 4가되고 4가 5가되도록하려면 어떻게해야합니까?

자세한 정보가 필요하면 언제든지 물어보십시오. 최대한 빨리 알려 드리겠습니다.

답변

2

업데이트하는 팀의 ID를 알고 ((42)를 호출 할 수 있습니다) 및 경우 이전 및 새 순위 (구 : 5, 새로운 : 3), 그것은 너무 어렵지 않다 :

UPDATE Team SET rank=rank+1 WHERE rank BETWEEN 3 AND 5; 
UPDATE Team SET rank=3 WHERE id=42; 
+0

그래, 업데이트해야 할 ID를 알 수 있습니다. 나는 이것이 작동 할 것이라고 생각한다. 나는 점검 할 것이다. 그리고 나는 당신에게 앙갚음을 할 것이다. 감사. – zomgcopters

+0

효과가있었습니다! 고맙습니다. 내 교과서는 BETWEEN 명령을 언급하지 않았으므로 어떻게해야할지 모르거나 온라인으로 검색했습니다. – zomgcopters

+0

'BETWEEN ... AND ... '를'rank> = 3 AND rank <= 5'로 바꿀 수 있습니다 –