Hängt davon ab, ob Ihre users
Tabelle ist MyISAM oder InnoDB.
Wenn es MyISAM ist, sperrt die eine oder andere Anweisung die Tabelle, und es gibt wenig, was Sie tun können, um das zu kontrollieren, außer Sperren von Tabellen selbst.
Wenn es sich um InnoDB handelt, ist es transaktionsbasiert. Die Multi-Versioning-Architektur ermöglicht gleichzeitigen Zugriff auf die Tabelle und den SELECT
sieht die Anzahl der Zeilen ab dem Zeitpunkt, an dem die Transaktion gestartet wurde. Wenn es ein INSERT
gibt gleichzeitig das SELECT
werden 0 Zeilen angezeigt. Tatsächlich könnten Sie sogar 0 Zeilen durch ein SELECT
sehen einige Sekunden später ausgeführt, wenn die Transaktion für den INSERT
hat sich noch nicht verpflichtet.
Es gibt keine Möglichkeit, dass die beiden Transaktionen wirklich gleichzeitig beginnen. Transaktionen haben garantiert eine gewisse Ordnung.