トランザクションに関しては特定の問題があり、さまざまな分離レベルが多かれ少なかれそれらを妨げます。これについては、私の回答こちら
で説明しました。 。
たとえば、ファントムリードのような問題は、あなたが行っているような選択の結果に影響を与える可能性があります。ただし、SQL_CALC_FOUND_ROWSの結果は、クエリが終了するとすぐに保存され、同じセッションで別のクエリを実行するとすぐに失われます。それが重要な部分です。 SQL_CALC_FOUND_ROWSはセッションバウンドです 。別のセッションでの別のクエリの結果が現在のセッションに保存される方法はありません。 SQL_CALC_FOUND_ROWSの使用は、競合状態の影響を受けません。 SELECTクエリの結果、はい。ただし、FOUND_ROWS()の結果ではありません。これを混同しないでください。