0

過去 6 か月の SQL クエリの結果を表示したいのですが、結果の月と年を表示するために、表示するコードは完全ではありません。最も重要な部分を与えるために..クエリを返すこの関数を使用しました(パラメーター$kは間隔です...):


$k をインクリメントするループがあり、6 か月間のクエリを作成できます。

for($i=0;$i<=5;$i++){
        $requete = query($i);
        SQL_QUERY($requete); // the function that executes the query
    }       

2013 年ではなく 2012 年であるため、1 月までの最後の月の結果を取得できますが、12 月までは取得できません。


月が12のときに年が現在の年-1になるように、これを作成しようとしました:

function print_date($y_m){
        foreach($y_m as $row){
             echo $row[0];
        if ($row[0] == 12){
             $_SESSION["y"]= $_SESSION["y"]+1;
             echo $_SESSION["y"];
        }
}

しかし、それは機能していません:/誰かがそれを行う方法を知っていますか??

4

1 に答える 1

5

次のような単純な SQL クエリを使用して、過去 6 か月間のデータを取得できます。

SELECT SRC as SOURCE FROM mytable
WHERE TYPE = 'SMS' 
    AND date >= DATE_SUB(NOW(), INTERVAL 6 month)

伸びる

1 か月かかる場合は、クエリを変更できます。

SELECT SRC as SOURCE FROM mytable
WHERE TYPE = 'SMS' 
    AND YEAR(date) = DATE_SUB(NOW(), INTERVAL $k month)
    AND MONTH(date) = DATE_SUB(NOW(), INTERVAL $k month)
于 2013-05-15T09:47:15.473 に答える