Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • Home
  • SEARCH
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 6767057
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 26, 20262026-05-26T14:54:21+00:00 2026-05-26T14:54:21+00:00

I want to : Select N rows from a table for processing where flag=0

  • 0

I want to :

  1. Select N rows from a table for processing where flag=0
  2. Do some work on a second table using values from these N rows
  3. Update these N rows and set flag=1

I have parallel processes doing this same work together, and i want to ensure that all get to work on unique rows. How do i ensure that?

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-26T14:54:22+00:00Added an answer on May 26, 2026 at 2:54 pm

    I assume you are running on SQL Server (because of the tag), if not then my answer is not applicable.
    Locking alone is not enough. If you use database record locking SqL server will block other processes trying to access the locked row and in effect you will handle only one row at a time.
    The solution for you is to combine row locking with READPAST hint so the rows locked by someone else will be skipped. Here’s what each process should do:

    1. select next unlocked row for processing and lock it
    2. do the work
    3. update the row and end transaction

    select top 1 id, ... from TheTable with (updlock, readpast) where flag = 0

    //do the work now

    update TheTable set flag = 1 where id=<previously retrieved id>

    The nice thing here that the operation of selecting the next unlocked row and locking it is atomic so it guarantees that no one else will be able to select the same row.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

Using MySQL 5.x I want to efficiently select all rows from table X where
I want to select rows from multiple tables using subsonic. For one table I
I want to select some rows from a SQLite table, and add an empty
I want to write a query to select from a table all rows with
Here's what I want to accomplish: Select all rows from table posts while also
let's say that you want to select all rows from one table that have
I want to select the most recent 12 rows from a table, but then
Hi all, My requirement is simple.I want to select random rows from a table.
I have a table with 3 columns (A,B,C). I want to select some rows
I want to select rows from a table where the value of column_x is

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.