sql >> データベース >  >> RDS >> Sqlserver

値の違いを確認するためにSQLループクエリを作成する方法は?

    DECLARE @idFrom as int,
            @idTo as int,
            @gpsDateFrom as datetime,
            @gpsDateTo as datetime
    DECLARE VehicleCursor CURSOR FAST_FORWARD FOR 
    SELECT  vehicle_gps_id, 
            datetimeCol
    FROM    yourtable
    ORDER BY vehicle_gps_id
    OPEN VehicleCursor FETCH NEXT FROM VehicleCursor INTO @idFrom, @gpsDateFrom
        FETCH NEXT FROM VehicleCursor INTO @idTo, @gpsDateTo
        WHILE @@FETCH_STATUS = 0 BEGIN 
            IF DATEDIFF(MI,@gpsDateFrom,@gpsDateTo) >5
            BEGIN
                --Break (your code here)
            END
            SET @idFrom = @idTo
            SET @gpsDateFrom = @gpsDateTo
            FETCH NEXT FROM VehicleCursor INTO @idTo, @gpsDateTo
        END 
    CLOSE VehicleCursor 
    DEALLOCATE VehicleCursor
      

    このようなものがうまくいくはずです。日時を比較するすべての列を実行するだけのカーソルです。 if ステートメントの後のコメント セクションに、やりたいことを何でも入力できます。




    1. MySQLのパフォーマンス:長いクエリの識別

    2. utf8_turkish_ciからutf8_general_ciへの行でテーブルを更新する効果はありますか?

    3. Rails:FATAL-ユーザーのピア認証に失敗しました(PG ::Error)

    4. Androidのバックアップ後にSqliteデータベースを復元する方法