SQL クエリをネストする最善の方法についてアドバイスが必要です。スタンドアロン クエリとして正常に機能する追加情報を取得するための新しいクエリを作成しましたが、MoveNext(); を配置しようとすると、コマンドを元の直前に挿入すると、ページの読み込みが失敗します。以下に例を挙げます。
$new_query = "SELECT new_values,new_price
FROM new_table
WHERE new_options_id = 2
AND language = 1";
$new_result = $db->Execute($new_query);
while (!$new_result->EOF){
$newdata = $new_result->fields['new_values']
$newprice = $new_result->fields['new_price'];
$original_query = "SELECT * FROM this_table WHERE orders_id = '$ship_order_id' and class = 'ot_subtotal'";
$original_result = $db->Execute($original_query);
SOME CODE IN HERE
while (!$original_result->EOF) {
MORE CODE HERE WITH SEVERAL {
RESULTS OF ORIGINAL QUERY ARE OUTPUT
RESULTS OF NEW QUERY ARE OUTPUT
$new_result->MoveNext();
$original_result->MoveNext();
}
}
MORE CODE WITH CLOSING } FROM EARLIER CODE
問題は、新しい MoveNext() とそれに関連付けられている } を挿入すると、ページの読み込みが停止することです。新しいクエリのデータ コレクションを元のクエリに含めることを検討しましたが、私の SQL の知識は限られています。元のループ内で結果をループできるように、これを回避する別の方法はありますか?