2017-02-06 11 views
1

"hours"というフィールドを持つテーブルがあり、そのフィールドは私の労働者が1日に働く時間です。毎日新しいレジストリが作成されるので、1日、1週間、1ヶ月の合計

Date: 2017-02-06; hours: 3 
Date: 2017-02-07; hours: 8 
Date: 2017-02-31; hours: 8 

質問は、私は今週と今月の、(それはすでに解決しています)、この日のためにすべての時間を合計する選択を行うことができますどのように、です。この日のために

合計(2017年2月6日):3

合計今週(2017-02-06-2017--2017-02-12私はこれで何を期待

):今月の11

合計(2月):19

オリジナルクエリ:

$db->query("select sum(hours) horasDia from table_hours where                
user="'.$user.'" and DATE(inici)=date('Y-m-d')); 

私は、pHを経由して、これをやっていますp。

EDIT:rahul_mの答えを :

日のために、週のセクションで

SELECT SUM(`hours`) horasDia 
FROM  table_hours 
WHERE  user="'.$user.'" and DATE(inici)= your_date; 
週のために

SELECT SUM(`hours`) horasDia 
FROM  table_hours 
WHERE  user="'.$user.'" and DATE(inici)= your_date; 
GROUP BY WEEK(your_date); 
月の

SELECT SUM(`hours`) horasDia 
FROM  table_hours 
WHERE  user="'.$user.'" and DATE(inici)= your_date; 
GROUP BY DATE_FORMAT(your_date, "%m-%Y"); 

それ'私に日付2017年1月31日(2017年1月30日週)月のセクションで

SELECT SUM(`hours`) horasDia 
FROM  table_hours 
WHERE  user="'.$user.'" and DATE(inici)= "2017-01-31"; 
GROUP BY WEEK("2017-01-31"); 

の唯一の時間を与えるのは、それは私だけでは何も与えていないです。

SELECT SUM(`hours`) horasDia 
FROM  table_hours 
WHERE  user="'.$user.'" and DATE(inici)= "2017-01-31"; 
GROUP BY DATE_FORMAT("2017-01-31", "%m-%Y"); 

多分私は何か間違っています。月

SELECT SUM(`hours`) horasDia 
FROM  table_hours 
WHERE  user="'.$user.'" and DATE(inici)= your_date; 
GROUP BY YEAR(o_date), MONTH(o_date) 

のために一日のために

+1

については

は、その日付のサンプルデータと期待出力 – GurV

+0

を提供し、(日によって)働くあなたのクエリを表示 –

+0

週くださいヶ月間

は、日付のデータを与えることに属しています一日だけ、私は明確であることを願って、 – rahulsm

答えて

1

、一週間

SELECT SUM(`hours`) horasDia 
FROM  table_hours 
WHERE  user="'.$user.'" and DATE(inici)= your_date; 

SELECT SUM(`hours`) horasDia 
FROM  table_hours 
WHERE  user="'.$user.'" and DATE(inici)= your_date; 
GROUP BY WEEK(your_date); 

あなたは が与える、これであなたの要件に応じて3つのすべての詳細を取得します試してみる。それだけでその週のすべてのデータを与えているよう

EDIT

今週の関連データは、正しいです。月

SELECT SUM(`hours`) horasDia 
FROM  table_hours 
WHERE  user="'.$user.'" and DATE(inici)= your_date; 
GROUP BY YEAR(your_date), MONTH(your_date) 
+0

回答ありがとうございますが、今のところ私にとってはうまくいきません。週にwhere句で使用されるデータは、グループで使用されているものと同じですか?そして、それは働いていないので、私は週にそれが総額をうまくやっていないことを意味し、月にそれは何も表示されません。 – Akaishu

+0

恩赦、あなたの問題をもう一度解消することができます – rahulsm

+0

私は投稿を更新しました。 – Akaishu

関連する問題