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

複数のクエリデータを単一のHTMLテーブル(PHP、MySQL)に

    $data = array();
    
    while($row = mysql_fetch_assoc($july)) {$data['row'][] = $row;}
    while($row = mysql_fetch_assoc($aug))  {$data['row2'][] = $row;}
    while($row = mysql_fetch_assoc($sept)) {$data['row3'][] = $row;}
    
    $count = count($data['row']);
    
    for($i=0;$i<=$count;$i++)
    {
        echo '<tr>';
            if(($i % 3) == 1)
            {
                echo "<td>" . $data['row3'][$i]['cUsername'] . "</td>";
                echo "<td>" . $data['row3'][$i]['postCount'] . "</td>";
            }else if(($i % 2) == 1)
            {
                echo "<td>" . $data['row2'][$i]['cUsername'] . "</td>";
                echo "<td>" . $data['row2'][$i]['postCount'] . "</td>";
            }else /*Never try find remainder of 1 as theres always a multiple of 1*/
            {
                echo "<td>" . $data['row'][$i]['cUsername'] . "</td>";
                echo "<td>" . $data['row'][$i]['postCount'] . "</td>";
            }
        echo '</tr>';
    }
    

    3つの異なる行を同時にフェッチするのではなく、結果を個別にローカル配列にフェッチすることにより、結果を個別に実行してローカル変数に格納する必要があります。大きな配列の場合は、単語の後に変数の設定を解除するだけです。

    私のコードはテストされていないものとして提供されています。



    1. 初心者向けのSQLCOUNT()

    2. PostgreSQLのトレンド:エンタープライズで最も人気のあるクラウドプロバイダー、言語、VACUUM、クエリ管理戦略、導入タイプ

    3. Python、SQLite、SQLAlchemyによるデータ管理

    4. PostgreSQLのパフォーマンスに関するチートシート