大量のデータのテーブルがあります。これは、100万の電話番号の1つの列にすぎません。
アップロードされた番号のファイルを受け取るPHPスクリプトに取り組んでいます。データベースに対して各番号を実行して、番号がすでに存在するかどうかを確認したいと思います。存在する場合は、trueが返されるだけで、他のデータは必要ありません。
私は2つの主な質問があります:
- パフォーマンス/速度の考慮事項については、次の場合に違いがありますか?
- 列は2つに分割されました(市外局番のある列A、残りの数字のある列B)。そうすれば、WHEREを使用してクエリを実行し、特定の番号に一致する市外局番を見つけて、残りの7桁を一致させることができますか?
- それとも、10桁全体を一致させるよりも違いはありませんか?
この質問に対する答え、MySQLテーブルに行が存在するかどうかをテストする最良の方法は次のとおりです。
SELECT EXISTS(SELECT 1 FROM table1 WHERE ...)
私が間違っていなければ、あなたが探しているものが存在するなら、それは単に値「1」を返すでしょう、正しいですか?PHPで結果を受け取るので、これが最も効率的な方法でしょうか?