以下のデータセットをSQL Serverに返すようにします。私は2列のTrailerPosition &区切りとゾーンを返すことを探している。ゾーンはゾーン1で始まると計算され、その後、ディバイダ= 1の後にレコードのゾーン2に変更されます。次にDivider = 1の次のレコードの次の3に戻ります。以下のスクリーンショットは、 。この列をSQL Serverで取得する方法
これはどのようにSQL Serverで行うことができますか?以下のための
テストデータ:
declare @t table (TrailerPosition nvarchar(5),Divider bit);
insert into @t values ('01L',0),('01R',0),('02L',0),('02R',1),('03L',1),('03R',0),('04L',0),('04R',0),('05L',1),('05R',1),('06L',0),('06R',0),('07L',0),('07R',0),('08L',0),('08R',0),('09L',0),('09R',0),('10L',0),('10R',0),('11L',0),('11R',0),('12L',0),('12R',0),('13L',0),('13R',0),('14L',0),('14R',0),('15L',0),('15R',0);
あなたが持っているように見えますdivider = 1の場合のdividerカラムの2つのデータポイント。ただし、divider = 1のときにzoneが変化するという要件があるので、実際にはこれはできません。そうでなければ、一度だけ変更したいときにゾーンが2回変化するクエリを取得します。 –
あなたのデータは画像ではなくテキストとして投稿してください。私たちの側でテストするのがはるかに簡単になります。また、これまでに何を試しましたか? – iamdave
@ JoeStamesの場合、ゾーン値をインクリメントする必要がある場合よりも1の後に0が得られると言います。 0,0,1,1(ゾーン= 1)、0,0,1,1,1,1(ゾーン= 2)、0,0,1,1,1(ゾーン= 3)、0,0、 0、0、0,1(ゾーン= 4)、0 –