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

php mysql group by date with yyyy-mm-dd format

    これを行うには、実際にphpを使用する必要があります。ただし、現在のシステムのほとんどはロジックを表示から分離しているため、(NUMBER OF DAYS + 1)SELECTではなく1つのパスのみを使用し、後で表示に再利用できる配列を準備します。

    $query = "SELECT DATE_FORMAT(date, '%M %D') as d, name FROM yourtable ORDER BY date";
    $foo=array();
    $result = mysql_query($query);
    while($row = mysql_fetch_assoc($result)) {
        //some logic to test if it's safe to add the name
        $foo[$row['d']][]=$row['name'];
    }
    

    そして、必要なときに(テンプレートまたは「ビュー」を介して)

    foreach($foo as $date => $events) {
        echo $date . ":\n\t";          
        echo implode(",\n\t", $events);
        echo "\n";
    }
    

    自分で設定した形式に適合します。

    お役に立てば幸いです



    1. Railsサーバーを起動できません

    2. トランザクション、行レベルのロック、および外部キーをサポートします

    3. mysqlで機能しないクエリを削除する

    4. MySQLクエリ結果をネイティブデータ型として取得しますか?