作者 主題: [MySQL]如何對同一個table不同列選擇特定欄位加總輸出,並取得被加總的列數編號?  (閱讀 5470 次)

0 會員 與 1 訪客 正在閱讀本文。

huangxianqin

  • 憂鬱的高中生
  • ***
  • 文章數: 129
    • 檢視個人資料
一個系統中斷紀錄資料表[tableA]內有欄位dataid[列編號]、inputDate[中斷日期]、targetArea、stopType、stopReason、interruptServ、interruptServStart[起始時間]、interruptServEnd[結束時間]、passHour[經過時間值]等

這個資料表取出資訊必須判斷該紀錄是否有跨日,跨日經過多久時間的計算....而判斷依據則是除了dataid、inputDate、interruptServStart、 interruptServEnd、passHour,其他欄位值都相同。首先要取得經過時間加總作法是
代碼: [選擇]
SELECT * , sum( `passHour` )
FROM `tableA`
GROUP BY `targetArea` , `stopType` , `stopReason` , `interruptServ`
ORDER BY `inputDate` ;
如此,假設有兩筆
dataid:1 inputDate:2008-03-17  interruptServStart:21:00 interruptServEnd:00:00 passHour:3.00
dataid:2 inputDate:2008-03-18  interruptServStart:00:00 interruptServEnd:06:00 passHour:6.00
可以正確得到一筆資料列sum(passHour)為9.00的輸出....

但請問我要怎麼取出dataid:2 的inputDate呢?意思是我必須知道是從那一天到那一天有中斷紀錄.....

煩請前輩指教~~ ???

Darkhero

  • 酷!學園 學長們
  • 俺是博士!
  • *****
  • 文章數: 3728
  • 性別: 男
    • 檢視個人資料
    • ㄚ凱隨手紀
希望我們的討論是為了把問題解決,而不是爭論誰對誰錯.
『灌水才是重點,發文只是順便』
『我寧可讓不會釣魚的工程師餓死,也不想讓會餓死的工程師去攪沉公司....』
Blog: http://blog.darkhero.net/
秘密基地: http://www.darkhero.net/comic/
目前服務的網站: http://www.libook.com.tw/