2017-05-09 6 views
-3

私は、SQLのwhere句をPHPで選択するよりも(またはその逆)恩恵を理解しようとしています。これは、一般的なプログラミングでは、パフォーマンス、セキュリティ、全体的な両方に関係しています。PHPを使用してSQLを使用するメリットはどこですか?

例:

なぜ私が使用する必要があります。オーバー

$sql = SELECT * FROM database WHERE id='1'

$sql = "SELECT * FROM database"; 
foreach ($db->query($sql) as $row) { 
    if ($row['id'] === $id) { 
     ... 
    } 
} 
+4

数百万の行が返された場合、データセット全体ではなく1つしか取得しないと簡単に想像してください。 – Qirel

+0

そして、あなたの情報 'from table'は' from database'ではありません – Sami

+1

ここでRDBMSはmysqlまたはsql-serverですか?彼らは異なっている –

答えて

4

SELECTは、データベースでフィルタリングを実行しますが、phpでフィルタリングを実行するアプリケーションは、ネットワーク上のすべてのデータをphpに転送する必要があります。

100万行から1行だけをフィルタリングする必要がある場合は、使用率とネットワークトラフィックを想像してみてください。

4

あなたが不必要に中間層するDBサーバからのすべてのデータをもたらし、それらをループしています中間層のデータではなく、dbクエリでは適切なインデックスを使用してrより速く均等なレコード

関連する問題