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

SELECT および UPDATE テーブルなので、スレッドの重複はありません

    同時実行セーフ キュー タイプのロックを意味する場合は、ROWLOCK、UPDLOCK、READPAST ヒントを使用しますか?

    SQL Server プロセス キューの競合状態

    BEGIN TRAN
    
    SELECT TOP 1 @QueryID = [ID] from Table WITH (ROWLOCK, UPDLOCK, READPAST)
    UPDATE Table SET [Read] = 1 WHERE [ID] = @QueryID 
    
    COMMIT TRAN -- TRAM
    

    ただし、1つのステートメントで。のようなもの

    WITH T AS
    (
        --ORDER BY with TOP , or perhaps MIN is better?
        SELECT TOP 1 [Read], [ID] from Table
        WITH (ROWLOCK, UPDLOCK, READPAST) ORDER BY [Read]
    )
    UPDATE
        T
    SET
        [Read] = 1;
    


    1. SQL Server 2008 での電子メール検証?

    2. SQLテーブルからSQLでピボットビューを作成する

    3. MYSQL親子同じテーブル。多次元配列としての親内のPHPネストの子

    4. このmysql結合クエリを取得して目的の結果を生成できません