2014-05-21 2 views
0

데이터베이스에서 데이터를 추출하고 ID를 기준으로 정렬했습니다. 이제 다른 ID를 사용하여 행을 분리해야합니다. 목표는 각 이드의 총 가격과 최신 날짜를 찾는 것입니다. PHP 테이블에서 추출한 데이터를 분리하는 방법

b_id price date 
---- ---------------- 
1  98.30 2014-05-14 
1  65.70 2014-05-07 
2  14.40 2014-05-06 
2  55.60 2014-05-07 
2  38.20 2014-04-06 
3  84.40 2014-04-02 
3  31.30 2014-04-12 
3  74.40 2014-05-06 

나는 사용하여 분리하는 시도 -

while ($row = mysqli_fetch_array($result1)) { 
    if($row['b_id'] == 1){ 


    } 

} 

을하지만 난하지 하드 코드 그것을 할 수 있습니다. 행을 어떻게 분리 할 수 ​​있습니까? 내가 잘못 했니?

+0

가 대신 PHP 코드의 쿼리에 직접이 작업을 수행하는 것이 더겠습니까 수 : 데이터베이스가 간단한 계산을 처리 할 때 보통 빠르다 ? –

+0

'SELECT SUM (b_id) FROM tablename WHERE b_id = 1 AND date = 'your_pick'시도 –

답변

0

쿼리에서 원하는 것을 할 수 있습니다. 그것은 같을 것입니다 :

select b_id, max(date) as maxdate, sum(price) total 
    from your table 
group by b_id 
order by b_id 
0

목표를 달성하려면 SQL을 사용해야합니다. 당신이 총 가격을 원하는 경우에

SELECT b_id, 
SUM(price) AS 'Price', 
MAX(date) AS 'Date' 
FROM YourTable 
GROUP BY b_id 
0

, 당신의 추출

SELECT b_id, SUM(price) AS total_price FROM your_table GROUP BY b_id 

while ($row = mysqli_fetch_array($result1)) { 
    echo "Id : " . $row['b_id'] . " Price : " . $row['total_price']; 
} 
관련 문제