-1

私は車のテーブルでモデルフィールドをグループ化していますが、モデルごとにグループ化された各差分から、すべてではなく、1つの結果しか取得していません。

moldel フィールドの下に 1990,19190,1990 の 3 台の車があり、suzuki、honda、tyota の 3 台の車が 1990 年モデルの undel car_name であるとします。助けてください。

         $sql=mysql_query("SELECT * FROM cars group by  model ");
    while ($row=mysql_fetch_array($sql)) {
       $car_name=$row['car_name'];
       $model=$row['model'];


            ?>

    <table>

        <tr>
            <td><?php  echo $model ?></td>   //here is displaying  1990.

        </tr >
        <tr  >
              <td> <?php   echo $car_name;  ?></td>    // but here is displayed only onr car name istead of all.

        </tr>

    </table>



    <?php

      }
4

2 に答える 2

0

特定の列でグループ化すると、その列の値ごとに 1 つの行だけを求めることになります。1990 年のホンダと 1990 年のスズキも必要な場合は、 を使用GROUP BY car_name, modelして、この列のペアのすべての固有の組み合わせを取得する必要があります。

ところで、あなたのモデル列には年が含まれていますか? 車種名はアコード、カムリ、セリカなど。

編集:

これがあなたが探しているものだと思います:

SELECT model, GROUP_CONCAT(car_name)
FROM cars
GROUP BY model
于 2012-10-06T09:28:12.150 に答える
-1

私はそれがうまくいくと信じています

<table>
  <?php 
     /* use this if doing process elimination. 
      $q = '1990';
      $sql=mysql_query("SELECT * FROM cars WHERE model = '$q' "); 
    */
    $sql=mysql_query("SELECT * FROM cars WHERE ORDER By model ASC ");
    while ($row=mysql_fetch_array($sql)) {  ?>
        <tr>
            <td><?php  echo $row['model']; ?></td>   //here is displaying  1990.

        </tr >
        <tr  >
              <td> <?php   echo $row['car_name'];  ?></td>    // but here is displayed only onr car name istead of all.

        </tr>
 <?php     }      ?>
    </table>
于 2012-10-06T09:32:40.067 に答える