2011-01-21 17 views
10

मेरे पास 3 कॉलम के साथ एक MySQL डेटाबेस में एक तालिका है: आईडी, मान और tstamp। मेरा tstamp कॉलम TIMESTAMP प्रारूप में है, यानी: 2011-01-21 08:32:22दिन के आधार पर MySQL PHP समूह और प्रत्येक दिन

जो मैं प्राप्त करने की आशा करता हूं वह प्रत्येक दिन के लिए कुल ब्रेक डाउन प्रदर्शित करने के लिए PHP का उपयोग करता है। मैं छद्म कोड में तालिका से पूछताछ करने के तरीके के बारे में सोच नहीं सकता: तालिका समूह से दिन (tstamp का हिस्सा) चुनें और प्रत्येक दिन "

के लिए मूल्य कॉलम से सभी संख्याओं को एक साथ जोड़ें। क्या यह संभव है ?

धन्यवाद बहुत

संपादित करें:

$sql = "select date(tstamp), sum(".$column.") from mash group by date(tstamp)"; 
      $result = mysql_query($sql); 
       while($row = mysql_fetch_array($result)){ 
         $strXML .= "<set name='".date("G:i:s", strtotime($row["date"])). "' value='".$row["sum"]."' color='AFD8F8' />"; 
       } 

कैसे मैं टी का उपयोग करें:

मैं स्वीकार किए जाते हैं जवाब के कोड के साथ कॉम्बो में इस क्वेरी है वह मूल्यों को $ पंक्ति में सही ढंग से सरणी करता है?

उत्तर

19

आप MySQL आप मूल्य तुम एक क्वेरी में आप उपयोग कर सकते हैं के लिए देख रहे हैं वापस जाने के लिए चाहते हैं:

select date(tstamp), sum(value) 
    from your_table 
group by date(tstamp); 
+0

का उपयोग कर @ benhowdle89 के बारे में मुझे लगता है कि $ पंक्ति [0] तिथि होगी, और $ पंक्ति [1] में समेकित मूल्य होगा। –

+0

mysql_fetch_assoc (http://www.php.net/manual/en/function.mysql-fetch-assoc.php) पर एक नज़र डालें, यदि आप अपने कोड नमूने में उजागर कर रहे हैं तो सरणी अनुक्रमणिका के बजाय नामों का उपयोग करना चाहते हैं। साथ ही, एक print_r ($ पंक्ति) आपको जो सरणी मिल रही है उसके अंदर क्या है उसे डीबग/निरीक्षण करने में मदद करेगी। –

+0

बेशक, इसके लिए धन्यवाद! – benhowdle89

1

यह कैसे

DATE_FORMAT(datestamp , '%Y') as year //for grouping over year 
DATE_FORMAT(datestamp , '%Y-%m') as month //for grouping over month 
DATE_FORMAT(datestamp , '%Y-%m-%d') as day //for grouping over day 
संबंधित मुद्दे