I know that select_for_update locks the records that are being queried if we have more than one concurrent user. But does it also affect the evaluation of the queried records.
For example, if user A and user B Query the table 'Jobs' at the same time based on a single variable 'Available' which is a Boolean. Both users would like to access records of available jobs (where Available = True).
User A managed to be queued first and the records he is accessing are now locked for user B.
If user A changes all records to False, does user B not get any records? Or does he get the same records as user A but with Availability equal to False?
Also, does select_for_update() work with MySQL? Or does it have a different solution for concurrent queries?