목표는 segment_code
에 대해 1 레코드로 플래그를 지정합니다. 여기서 Mtg_Flag = 1
이없는 경우 Mtg_Flag = 1
이 표시되고 Mtg_Flag = 0
으로 레코드에 플래그를 지정합니다. 코드는 Mtg_Flag = 1
인 모든 레코드에 플래그를 지정하지만 일단 실행되면 나머지 레코드를 플래그하는 방법은 Mtg_Flag = 0
입니다. 내 예에는 segment_codes
이라는 153 개의 고유 번호와 Mtg_Flag = 1
의 146 개의 고유 번호가 있습니다. 그럼, 어떻게 나머지 플래그를 segment_codes
Mtg_Flag = 0
어디 플래그합니까.SQL Server 2005의 플래그 레코드
코드 :
With LiveSam as (
Select acct_id,Row_Number() Over(Partition By Segment_Code Order By NewID())
as RowNumber
From Table_tr
Where LiveSam is NULL and seedrecordindicator is null and HasMtg_Flag = '1')
Update Table_tr
Set LiveSam = 'Y'
From LiveSam L
Where Table_tr.acct_id = L.acct_id
and L.RowNumber < 2
and Table_tr.acct_id is not NULL
예. 변수를 사용하여 추가 레코드 7 개를 표시하도록 한 걸음 더 나아갔습니다. 감사! – user2635406