2011-08-28 8 views
6

サンプルの詳細ページを作成しているうちに、私はちょっと混乱してしまいました。どのような私が実際にやってみたいことは、このようなものです:phpとmysqlは年と日付でデータを取得します。テーブル構造?

+----------------------------------------------------+ 
+ Year | Month | Date  | Total Gain + 
+----------------------------------------------------+ 
+ 2003 | January | 26/01/2003 | +90 %    + 
+ 2003 | January | 27/01/2003 | +10 %    + 
+ 2003 | Feburary| 01/02/2003 | -29 %    + 
+ 2003 | Feburary| 15/02/2003 | +0.52 %   + 
+----------------------------------------------------+ 

私が実際にしたい私は賢いmysql_query('SELECT month FROM mytable WHERE year="2003"');

のような月名と年を一覧表示することができますということです。しかし問題は、それが1月2時間を示しています。私は1月1日を表示し、その隣のリンクを次のページに持ちます。これにより、1月の統計が表示されます。

+0

あなたがテーブル構造を共有することはできますか? –

答えて

4

私はすなわち

SELECT DISTINCT year, month FROM mytable 
+0

はい、まさにそれはほぼ達成されますが、このクエリmysql_query(mytableからSELECT DISTINCT FROM mytable)のような月の名前しか表示されず、月/年の表のように月名と年号を表示する場合はどうすればいいですか?クエリ私は月の名前を仮定しているだけですが、私は月を具体的に狙っているので、年の名前を得ることができません! – Ahsan

+2

Distinctは、日付とTotal Gainが異なるため、同じ結果を表示します。 –

+1

まあ、あなたが達成したいことをよりよく説明する必要があります、それは私に今明らかではありません... – ain

5

たぶん、あなたはGROUP BY句を使用する必要がありますし、同様にあなたのトータルゲインを計算し、何youreのを探していることはDISTINCTクエリだと思います。

(テーブル構造が指定されていないので、私はここで推測します)

SELECT `Year`, `Month`, SUM(gain) AS 'Total Gain +' FROM table GROUP BY month, year; 
+2

これは私を助けました:) – Ahsan

+0

@ Ahsanあなたの答えはわかりましたが、私は混乱しています。私の答えは正しいかBookOfZeusのものですか? – ain

関連する問題