1

このクエリを使用して、データベースから行を選択しています

$date=mysql_query("SELECT party_id, advo_id, max(fixed_date) as d FROM `case_proceeding` group by party_id order by fixed_date");

    while($drow=mysql_fetch_array($date)){  

    if($drow['d']<$today){

        $decide=mysql_query("select * from case_decision where party_id='$drow[party_id]'");

        if(mysql_num_rows($decide)=='0')
        {

            if($drow['d']!='0000-00-00')
            {
                echo '<a href=case-tracking.php?date='.$drow['d'].'&party_id='.$drow['party_id'].'&advo_id='.$drow['advo_id'].' style=color:#000000;>'.date('d/m/Y',strtotime($drow['d'])).'</a>';
            }

        }

同じ fixed_date を持つ行が多数あります。

例えば。party_id=1 には fixed_date=2012-08-12 があり、party_id=5 にも同じ日付 fixed_date=2012-08-12 があります

今度は、同じ fixed_date を持つ行のグループを作成したいと考えています。

私を助けてください。

4

2 に答える 2

0

これを試して:

SELECT t1.party_id, t2.advo_id, t1.MaxDate
FROM
(
    SELECT party_id, 
      MAX(fixed_date) AS MaxDate 
    FROM `case_proceeding` 
    GROUP BY party_id 
) t1
INNER JOIN case_proceeding t2  ON t1.party_id = t2.party_id 
                              AND t1.MaxDate  = t2.fixed_date
ORDER BY fixed_date
于 2012-10-09T07:12:37.137 に答える
0

テーブルと関係を知らなくても、ある程度の当て推量が必要ですが、これを試してみてください。

SELECT cd.*, cp.party_id, cp.advo_id, cp.MaxDate FROM (SELECT party_id, advo_id, MAX(fixed_date) AS MaxDate FROM case_proceeding GROUP BY party_id ) cp INNER JOIN case_decision cd ON cp.party_id = cd.party_id ORDER BY cp .MaxDate

于 2012-10-09T15:03:59.280 に答える