sql >> データベース >  >> RDS >> Mysql

クエリを循環して複数のテーブルを作成する

    まず第一に、mysql_関数を使用するべきではありません。それらは非推奨です。少なくとも、mysqli_ に切り替える必要があります。 (非常に簡単な切り替え)、またはより良い方法として、PDOの使用方法を学びます。 。切り替えるのは少し異なり、より複雑ですが、コードはより良く、より安全になります。

    それが邪魔にならないように:あなたの論理はかなり正確です。結果を各コースの上位5つの結果に制限する 私の知る限り、1つのクエリでSQLを使用して簡単に実行できるものではないため、計画は適切です。コースのリストをクエリしてから、既存のクエリでそれらを循環し、コースごとに1回実行し、制限5を取得します。トップ5。

    これはコースごとのテーブルであるため、このループ内でもテーブル生成を維持することをお勧めします。実行する必要があるのは1回だけなので、VehNameクエリをループの外に移動する必要があります。

    また、未承諾のPHPアドバイスもあります。タグの外側のテキストは直接出力されるだけなので、組み込みのテンプレートと代替構文 テーブル生成コードをより良くするために:

    <?php
       /* Gather your data here... */
    ?>
    <table>
      <tr><th>Best Scores for <?php echo $vehName['Veh_name'] ?></th></tr>
    </table>
    <table border='1'>
      <tr>
        <th>Course</th>
        <th>Score</th>
        <th>Distance</th>
        <th>Player</th>
        <th>Time</th>
      </tr>
      <?php while($row = mysql_fetch_array($result_HiScores)): ?>
      <tr>  
        <td><?php echo $row['course'] ?></td>
        <td><?php echo $row['score'] ?></td>";
        <td><?php echo $row['distance'] ?></td>";
        <td><?php echo $row['User'] ?></td>";
      </tr>
      <?php endwhile; ?>
    </table>
    


    1. 特定の列に一意キー制約が存在するかどうかを確認する方法

    2. 過去7日ごとに最大値を選択

    3. postgres dbファイル-特定のテーブル/インデックスを表すファイルはどれですか?

    4. DD-Mon-YY形式でmySQLに日付を挿入できますか?