2013-12-15 3 views
1

Я очень новичок на php и sql.Как получить изменение цены закрытия между сегодняшним днем ​​и вчера?

Так выглядит база данных.

Я хочу, чтобы изменения Close для повседневных.

// Quantity of rows 

$sql = mysql_query("SELECT Date, Close FROM stock"); 

$range = mysql_num_rows($sql); 

echo $range . "<br>"; 

// Getting the Change 

$result2 = mysql_fetch_array($sql); 

for($i=1;$i<$range+1;$i++){ 

    $dayChange = $result2[$i]-$result2[$i-1]; 

    echo $dayChange . "<br>"; 

} 

http://i.stack.imgur.com/KYMke.jpg

+0

граф лучше достигается за счет 'SELECT COUNT (*) FROM stock'. И вы должны добавить LIMITS к вашему запросу, чтобы найти множество строк результатов и добавить механизм подкачки. – HerrSerker

+0

@HerrSerker Почему лучше считать счет, используя счет? Не спорить, просто интересно, почему. – Ali

+0

@AliTrixx Если у вас много строк результатов, это замедлит работу системы, потому что все строки должны быть отправлены с сервера MySQL в PHP-процесс. – HerrSerker

ответ

0

Если нет, то праздник не попробовать этот SQL-запрос:

SELECT id, sDate AS mDate, close, (
close - ( 
SELECT close 
FROM stock 
WHERE sDate = DATE_ADD(mDate, INTERVAL 1 
DAY)) 
) AS dayChange 
+0

Только торговые дни. Нет субботы и воскресенья, никаких праздничных дней. Больше помочь !? благодаря – user3104489

Смежные вопросы