title: How select for update works for queries with multiple rows/results?
body: <p>So given this transaction:</p>
  
  <pre><code>select * from table_a where field_a = 'A' for update;
  </code></pre>
  
  <p>Assuming this gives out multiple rows/results, will the database lock all the results right off the bat? Or will it lock it one row at a time.</p>
  
  <p>If the later is true, does that mean running this query concurrently, can result in a deadlock? </p>
  
  <p>Thus, adding an order by to maintain consistency on the order is needed to solve this problem?</p>