const string query = @"
WITH cteRowNumber AS (
SELECT [PersonalFieldBoundaryId]
,[FieldBoundaryId]
,[ParticipantId]
,[Start]
,[RedUpper]
,[OrangeUpper]
,[GreenUpper]
,[GreenLower]
,[OrangeLower]
,[RedLower]
,row_number() OVER(PARTITION BY [FieldBoundaryId] ORDER BY [Start] DESC) AS RowNum
FROM PersonalFieldBoundaries
WHERE [Start] <= {1} AND [ParticipantId] = {0}
)
SELECT [PersonalFieldBoundaryId]
,[FieldBoundaryId]
,[ParticipantId]
,[Start]
,[RedUpper]
,[OrangeUpper]
,[GreenUpper]
,[GreenLower]
,[OrangeLower]
,[RedLower]
FROM cteRowNumber
WHERE RowNum = 1
"; const string query = @"
WITH cteRowNumber AS (
SELECT [PersonalFieldBoundaryId]
,[FieldBoundaryId]
,[ParticipantId]
,[Start]
,[RedUpper]
,[OrangeUpper]
,[GreenUpper]
,[GreenLower]
,[OrangeLower]
,[RedLower]
,row_number() OVER(PARTITION BY [FieldBoundaryId] ORDER BY [Start] DESC) AS RowNum
FROM PersonalFieldBoundaries
WHERE [Start] <= {1} AND [ParticipantId] = {0}
)
SELECT [PersonalFieldBoundaryId]
,[FieldBoundaryId]
,[ParticipantId]
,[Start]
,[RedUpper]
,[OrangeUpper]
,[GreenUpper]
,[GreenLower]
,[OrangeLower]
,[RedLower]
FROM cteRowNumber
WHERE RowNum = 1
";