3
我有一個位置表在SQL Server 2008R2(定義如下)。如何確定給定標準的連續範圍的大小?
在系統框中有位置。
我有一個要求,找到一個盒子,剩餘X空位。但是,X位置必須是連續的(從左到右,從上到下,即上升的PositionID)。
構建一個查詢可以很容易地找到一個空閒X位置的框。我現在有問題確定這些頭寸是否連續。
基於TSQL解決方案的任何建議?
表定義
` CREATE TABLE [dbo].[Position]( [PositionID] [int] IDENTITY(1,1) NOT NULL, [BoxID] [int] NOT NULL, [pRow] [int] NOT NULL, [pColumn] [int] NOT NULL, [pRowLetter] [char](1) NOT NULL, [pColumnLetter] [char](1) NOT NULL, [SampleID] [int] NULL, [ChangeReason] [nvarchar](4000) NOT NULL, [LastUserID] [int] NOT NULL, [TTSID] [bigint] NULL, CONSTRAINT [PK_Position] PRIMARY KEY CLUSTERED ( [PositionID] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] ) ON [PRIMARY]`
編輯
http://pastebin.com/V8DLiucN - (在樣本數據的所有位置空),用1個箱樣本位置引擎收錄鏈路
編輯2
A'免費「的位置是SampleID = null
你能通過SQL腳本提供一些示例數據嗎? – Chris
@Chris - 感謝您的關注,樣本數據鏈接已發佈 – Jonno
以下哪個(或另一個)是正確的要求?1)給定多個免費倉位X,找到匹配的一個或所有框;或者2)找到所有具有空閒連續位置的框並計算這些位置。如果在某個盒子裏有一組5個連續的(10到14)和另一組10個連續的(51到60)的空閒位置,那裏有多少個位置? –