DjangoフレームワークはEchart統計SQL文を使用しました

最近の統計はEchartグラフィック表示をしたいですか、データソースのMySQLデータベースは、パラメータの比較的大きな数が現在の時間であるとともに、異なる検索条件に応じて、テーブル内のデータをフィルタリングする自然必要です!

一般的にSQL文を取得するために、MySQLの時間を使用した条件:

データテーブル:tableNameのフィールド名:MyDateに該当

最後の7日間、
SELECT  *  FROM tableNameのDATE_SUB(CURDATE()、INTERVALため。7 DAY<= DATE(MyDateに該当); 
最近1ヶ月SELECT * FROM tableNameのDATE_SUB用(CURDATE() 、INTERVAL 1 MONTH<= DATE(MyDateに該当); 
昨年SELECT * FROM tableNameのWHERE DATE_SUB(CURDATE()、INTERVAL 1 YEAR<= DATE(MyDateに該当); 
週(日曜日開始から)SELECT * FROM 

   

   

  tableNameの場合 YEARWEEK(DATE_FORMAT(MyDateに該当、' %Y-%M-%D '))= YEARWEEK(NOW()); 

上周的
SELECT  *  FROM tableNameのYEARWEEK(DATE_FORMAT(MyDateに該当、' %Y-%M-% D '))= YEARWEEK(NOW())- 1 ; 
本月的SELECT * FROM tableNameのDATE_FORMAT(MyDateに該当、' %Y-%のM '= DATE_FORMAT(NOW()、' %Y-%のM ' 
上个月的SELECT *

  

  FROM tableNameのDATE_FORMAT(MyDateに該当、' %% Y-M '=(DATE_SUB(CURDATE()、間隔のDATE_FORMAT 。1 )、' %% Y-Mは' ); 
6ヶ月からのデータは今であるSELECT * FROM tableNameのWHERE MyDateに該当BETWEEN(今()、インターバルDATE_SUB 6 )(今、
グループ化、今年のデータを、毎月SELECT (fly_timeStart)AS COUNT*FROM 

   

  flightinfo.tab_flight_info WHERE  (fly_timeStart)= 2019  グループ によって (fly_timeStart); 

月の最初の日を取得する
SELECT DATE_ADD(CURDATE()、INTERVAL - DAY(CURDATE())+ 。1  ); 

先月取得し、最終日
SELECT DATE_SUBについて( CURDATE()、INTERVAL DAY(CURDATE())+ 0  )。

私は昨年カウントされやりたい、データの月は毎月の統計情報が含まれていません。だけでなく、データ、日によって統計の月。

これは、文の始まりですが、それは現在の日付によって前方に押され、私はデータの月が含まれていない月の最初の日から、邁進したいと思います。

昨年のデータ、月パケット
 SELECT plane_type、(fly_timeStart)AS  (fly_timeStart)AS  月ザ・COUNT*AS  COUNT  
FROM tab_flight_info WHEREが DATE_SUB(CURDATE()、INTERVALのために1 YEAR<= DATE(fly_timeStart ) plane_type = ' モデル1。'
グループ によって (fly_timeStart)、(fly_timeStart)。

そして、次の文の中に、CURDATE()が変更さ  DATE_SUB(CURDATE()、INTERVAL DAY(CURDATE())のために+ 0日目

データの最新年、グループ分け毎月
 SELECT plane_type、今年(fly_timeStartを)AS  (fly_timeStart)AS  月ザ・COUNT*AS  COUNT  FROM tab_flight_info WHERE 
 DATE_SUB(DATE_SUB(CURDATE()、INTERVAL DAY(CURDATE())+ 0  )、INTERVAL 。1  <= DATE(fly_timeStart)AND plane_type = ' モデル。1 '  
グループ によって (fly_timeStart)、(fly_timeStart)。

そして、毎月の統計情報:

日によってグループ化された先月のデータ、
 SELECT  (fly_timeStart)、(fly_timeStart)、COUNT*FROM flightinfo.tab_flight_info DATE_SUB(CURDATE()、INTERVALのため。1 MONTH<= DATE(fly_timeStart) 
 グループによって fly_timeStart( )、(fly_timeStart); 
データ取得月SELECT * から tab_flight_info DATE_FORMAT(fly_timeStartは、' %% Y mが'= DATE_FORMAT(CURDATE()を、' %m個の%Y '   

  ); 
获取当月数据
SELECT  (fly_timeStart)として (fly_timeStart)として カウント*として カウント から tab_flight_info 
ここ DATE_FORMAT(fly_timeStart、' %のYの%のM '= DATE_FORMAT(CURDATE()、' %Y %のM 'AND plane_type = ' 机型1 ' によって (fly_timeStart)。

 

ああ、ここで第一、コードEchart Djangoのフレームの前端と後端を使用する方法を、次を記載しています。継続するには!

 

おすすめ

転載: www.cnblogs.com/AndrewYin/p/11265706.html