Beror på om dina users
tabellen är MyISAM eller InnoDB.
Om det är MyISAM tar det ena eller andra uttalandet ett lås på bordet, och det finns lite du kan göra för att kontrollera det, förutom låsningstabeller dig själv.
Om det är InnoDB är det transaktionsbaserat. Flerversionsarkitekturen tillåter samtidig åtkomst till tabellen och SELECT
kommer att se antalet rader från det ögonblick då transaktionen startade. Om det finns en INSERT
pågår samtidigt, SELECT
kommer att se 0 rader. Du kan faktiskt till och med se 0 rader med en SELECT
exekveras några sekunder senare, om transaktionen för INSERT
har inte åtagit sig ännu.
Det finns inget sätt för de två transaktionerna att starta på riktigt samtidigt. Transaktioner har garanterat en viss ordning.