2017-02-21 6 views
1

私はPHPMySQLに取り組んでいます。今日と昨日生成された結果を数えたいと思います。結果を1日ごとに生成

ここに私のphpmyadminのスクリーンショットがあり、テーブルはresultsです。

$query = $db->query("SELECT * FROM `results` where date_generate BETWEEN DATE_ADD(CURDATE(), INTERVAL -1 day) AND CURDATE()"); 
$query->execute(); 
echo $count = $query->rowCount(); 
+0

としてdate_generateを考慮 ようになりますここにヒントがあります: 'WHERE'句を使用して開始します。助けを求める前に、最小限の努力を示すべきです。 –

+0

はい私は昨日フォームをしようとしていますが、それでも問題は、この質問を投稿することができます –

+0

ようこそStackoverflow。新しい質問をする前に、いくつかの調査をしてください。これはすでに何度も答えられています。このリンクをチェックしてください:http://stackoverflow.com/questions/10395444/mysql-count-and-group-by-day –

答えて

0

合計結果を数えるこのクエリは、クエリを交換していTIMESTAMP

table

を使用していたdate_generate列でdate_genrateに基づいて作成されたレコード。だから、あなたのクエリがtimestammp

SELECT DATE(FROM_UNIXTIME(date_generate)) AS date_g, COUNT(id) AS NumPosts 
FROM results 
WHERE date_generate BETWEEN DATE_ADD(CURDATE(), INTERVAL -1 day) AND CURDATE() 
GROUP BY date_g 
ORDER BY date_g 
+0

ありがとう、その仕事を –

+1

更新された答えをチェックし、$カウント変数を使用します。エコー$クエリ - >実行();戻り値の型は常にBOOL(真または偽)であるため、常に1または0を返します –

+0

はい今作業しています:) –

1

あなたが取得するgroup byを使用する必要があります。私は

<?php 

    $query = $db->query("SELECT * FROM `results`"); 
    $count = $query->rowCount(); 
    echo $count; 
+0

私はこれを試しましたが、まだこの出力を表示しています ここで質問しました '<?php $ query = $ db-> query SELECT DATE(FROM_UNIXTIME(date_generate))date_g AS、COUNT(ID)DATE_ADD(CURDATE()、INTERVAL -1日)AND CURDATE(BETWEEN結果 WHERE date_generate) グループからNumPosts AS date_g 「BY date_g ORDER BY) ; echo $ query-> execute();?> ' –

+0

get row_count ....実行されたクエリのみが正常に実行されたかどうかを返します.... phpmyadminでクエリを直接実行して、結果を確認してください... – Naincy

+0

@VikasUmraoによって解決された問題 –

関連する問題