データベースからポイントを選択するために、以下のクエリがあります。「2013-09」のポイントだけが欲しいので、少し調整する必要があります。AND "Time" LIKE '2013-09%' を単純に追加してみましたが、0 レコードが生成されるため、うまくいかないようです。また、データベースには今年一致するレコードが含まれているという事実も知っています。これは、以下のクエリを使用して (時間選択部分を削除して) すべてのレコードを選択したためです。問題は何ですか?
; WITH positions AS (
SELECT MMSI
, Message_ID
, "Time"
, Latitude
, Longitude
FROM dbo.DecodedCSVMessages_Staging
WHERE Message_ID IN (1, 3)
AND Latitude > 45
AND Latitude < 85
AND Longitude < -50
AND Longitude > -141
AND "Time" LIKE '2013-09%' <- this is where I'd put it
)
, details AS (
SELECT MMSI
, Ship_Type
, Vessel_Name
, IMO
, Row_Number() OVER (PARTITION BY MMSI ORDER BY "Time" DESC) As row_num
FROM dbo.DecodedCSVMessages_Staging
WHERE Message_ID = 5
)
SELECT positions.MMSI
, positions.Message_ID
, positions."Time"
, details.Ship_Type
, details.Vessel_Name
, details.IMO
, positions.Latitude
, positions.Longitude
FROM positions
INNER
JOIN details
ON details.MMSI = positions.MMSI