Поведение результатов вложенных запросов PHP странно - PullRequest
0 голосов
/ 09 октября 2019

Это всего лишь пример, это не мой настоящий код, и я понимаю, что mysql ограничен. Все несуразные вещи, которые люди публикуют, потому что они не знают фактического ответа, были рассмотрены.

Теперь к вопросу, день 5 и день 4 имеют список элементов в результате. Выводится первый идентификатор в строке 5, затем все строки 4, а затем остальные строки 5. Я ожидаю, что список всех row4 для каждого элемента в row5. Это для php. Есть идеи? Спасибо

Это пример используемого запроса. Оба запроса извлекаются из одной и той же таблицы, но используют разные даты, обновленные с интервалом в $. Столбцы базы данных (id, символ, цена, close_dt, объем)

$closeDate = date('Y-m-d', strtotime($date. ' '.$interval.' days'));
$query = sprintf("SELECT * FROM stock WHERE close_dt ='%s'", 
     mysql_real_escape_string($closeDate));

$day4 = mysql_query($query);


while ($row5 = mysql_fetch_assoc($day5)) {
    echo $row5['id'];
    while ($row4 = mysql_fetch_assoc($day4)) {
         echo $row4['id'];
    }
}

1 Ответ

1 голос
/ 09 октября 2019

решение заключается в использовании

mysql_data_seek($day4,0);

пример:

while ($row5 = mysql_fetch_assoc($day5)) {
    echo $row5['id'];
    mysql_data_seek($day4,0);
    while ($row4 = mysql_fetch_assoc($day4)) {
         echo $row4['id'];
    }

}

...