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

MySQL間隔分

    試してみてください:

    $minutes = 60 * 2
    
    SELECT COUNT(`id`) AS `TOTAL`, `job_id` 
      FROM `tlb_stats` 
      WHERE `log_time` < DATE_SUB(NOW(), INTERVAL $minutes MINUTE) 
      GROUP BY `job_id`
    
    • バッククォートを使用してフィールドを引用します(「total」や「id」などの単語は、いつか意味になる可能性があります。 MySQLの何か)
    • NOW()を使用する CURRENT_DATEの場合は、2010-08-04を意味し、時刻は含まれません
    • <を使用する 古いエントリを取得するには その日付より。


    1. 日付でグループ化し、レコードが見つからない場合でも行を返します

    2. SQLの別の列の各値の最も一般的な値を取得します

    3. generate_series()でカウントクエリに参加し、Null値を「0」として取得します

    4. MySQLiのmysql_resultを置き換えるもの