1

前の 2 つのクエリを必要とする結果を表示したい。新しい Mysqli インターフェースでこのようなことをしようとしているのですが、正しい方法で動作させることができません。

私はこれを持っており、出力は次のとおりです

$qryRdmPh="SELECT `id` FROM `table` ORDER BY RAND() LIMIT 0,30";
$stmtRdmPh = $mysqli->prepare($qryRdmPh);
$stmtRdmPh->execute();
$stmtRdmPh->bind_result($id);
 while($stmtRdmPh->fetch()) {
 //Obtener el atributo Frase
 $qryPhVal="SELECT `id_v` FROM `values` WHERE `id_p`='" . $id . "'";
 $stmtPhVal = $mysqli->prepare($qryPhVal);
 $stmtPhVal->execute();
 $stmtPhVal->bind_result($idV);
  while($stmtPhVal->fetch()){
  echo $idV;
  }
 }

それほど複雑なルールを使わずに結果を表示する別の方法があるに違いありません...ステートメントクエリを使用することが非常に重要であると読みましたが、なぜですか? それは私のコードをはるかに長く複雑にします。

編集:ステートメントが非常に重要であるかどうか、およびステートメントを常に使用する必要があるかどうかを誰かが説明してくれれば、本当に感謝します。

4

1 に答える 1

1

この方法でクエリをネストしなくても、同じことを行う可能性は常にあります。さらに... この方法で実行すると、DB に損害を与える可能性があります。常により簡単な方法を試してください。

:現在のクエリに依存するクエリを実行したい場合は、バッファを作成し、バッファリング後にすべての行を挿入するとよいでしょう。

于 2012-10-27T19:07:18.237 に答える