1

SQLiteデータベースがありますTestDB。これには、たとえば、テーブルがありますrecordsID1から3までの値を順番に繰り返す列を作成したいと思います。

例えば:

**Record#**      **ID**
Record1            1
Record2            2
Record3            3
Record4            1
Record5            2
Record6            3
Record7            1
Record8            2
Record9            3
Record10           1
Record11           2
Record12           3

等々...

これを実現できるSQLクエリはありますか?入力ありがとうございます!

4

2 に答える 2

3

これを試して:

select Record,(select COUNT(0) 
                from Table1 t1 
                where t1.Record <= t2.Record 
     )%3+1 as 'ID'
from Table1 t2 
ORDER BY Record; 


SQLFiddleデモ

于 2012-10-05T10:21:53.663 に答える
0

解決策の1つは、列をIDとして作成し、しきい値に達したときにIDをリセットすることです。

if exists(select id from records where id = 3)
begin
DBCC CHECKIDENT('records', RESEED, 0)
insert into records values('Record4')
end
else
begin
insert into records values('Record3')
end
于 2012-10-05T10:24:44.747 に答える