線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1633
推到 Plurk!
推到 Facebook!

請問如何 秀出 Group by 的時間

答題得分者是:jeffreck
suntree
一般會員


發表:7
回覆:16
積分:9
註冊:2005-01-21

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-05-09 07:23:24 IP:218.168.xxx.xxx 未訂閱
在我的資料裡 是 10 秒中 會存一筆資料,資料表如下    時間  物品編號  物品流量 ------------------------- 2005/05/08 08:00:00  1  10 2005/05/08 08:00:10  1  12    而且我現在是以時間做集合點所想出來的以一分鍾做群組    select sum(VOLUME1),ROUND(TO_NUMBER(VD_TIME-TO_DATE(2000/01/01))*1440) from 資料表 GROUP BY ROUND(TO_NUMBER(VD_TIME-TO_DATE(2000/01/01))*1440)    乘以1440是以分為積準,目前  這裡 我都想出來了@@"但還差 就不 不能show出時間…我找了許多資料 也想了許久  但還是不知@@"不知 有沒有 人可以幫我出個主意^^還是 我 資料表設計的不好/.\希望給我個主意 謝謝
jeffreck
高階會員


發表:247
回覆:340
積分:197
註冊:2003-01-23

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-05-09 09:48:00 IP:61.218.xxx.xxx 未訂閱
T-SQL 不太會,找不到FormatDateTime 的東西只好寫這樣 參考看看 還請前輩指導!! Select cast(year(使用日期) as char(4)) ' /' cast(month(使用日期) as char(2)) '/ ' cast(day(使用日期) as char(2)) ' ' cast(DATENAME (hour,使用日期)as char(2)) ' :' cast( DATENAME (minute,使用日期)as char(2)) AS 時間, Count(ID) AS 筆數 From dbo.AB出貨單分錄 Group by cast(year(使用日期) as char(4)) ' /' cast(month(使用日期) as char(2)) '/ ' cast(day(使用日期) as char(2)) ' ' cast(DATENAME (hour,使用日期)as char(2)) ' :' cast( DATENAME (minute,使用日期)as char(2)) try try see
jeffreck
高階會員


發表:247
回覆:340
積分:197
註冊:2003-01-23

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-05-09 10:07:50 IP:61.218.xxx.xxx 未訂閱
又想到另一種寫法 參考看看 Select DATEADD(second, -cast(DATENAME (second,使用日期) as int) ,使用日期) AS 時間 , Count(ID) AS 筆數 From dbo.AB出貨單分錄 Group by DATEADD(second, -cast(DATENAME (second,使用日期) as int) ,使用日期)
suntree
一般會員


發表:7
回覆:16
積分:9
註冊:2005-01-21

發送簡訊給我
#4 引用回覆 回覆 發表時間:2005-05-09 10:15:58 IP:220.135.xxx.xxx 未訂閱
先感謝jeffreck的回答^^我也去試了一下.....    結果 他說 ORA-00396:遺漏表示式 (我發現錯誤了 原來是多個標點符號) 不過 他出現了ORA-00904:"DATANAME":ID無效 SQL指令改成為: Select cast(year(vd_time) as char(4)) ' /' cast(month(vd_time) as char(2)) '/ ' cast(day(vd_time) as char(2)) ' ' cast(DATENAME (hour,vd_time)as char(2)) ' :' cast( DATENAME (minute,vd_time)as char(2)) AS 時間 From titan.vd_data Group by cast(year(vd_time) as char(4)) ' /' cast(month(vd_time) as char(2)) '/ ' cast(day(vd_time) as char(2)) ' ' cast(DATENAME (hour,vd_time)as char(2)) ' :' cast( DATENAME (minute,vd_time)as char(2)) 麻煩了 發表人 -
jeffreck
高階會員


發表:247
回覆:340
積分:197
註冊:2003-01-23

發送簡訊給我
#5 引用回覆 回覆 發表時間:2005-05-09 11:31:52 IP:61.218.xxx.xxx 未訂閱
你是用那一種資料庫?? 我是用MSSQL 2000 沒問題哦!!
suntree
一般會員


發表:7
回覆:16
積分:9
註冊:2005-01-21

發送簡訊給我
#6 引用回覆 回覆 發表時間:2005-05-09 11:35:46 IP:220.135.xxx.xxx 未訂閱
我忘了 說一件 粉重要的事 我用的是oracle 我剛查文一下 大大寫的 應該是 sql的指令?? 不知 有沒有辦法 轉成 oracle....因為 我都不大懂@@" 麻煩了 我也繼續努力去翻文了^^
jeffreck
高階會員


發表:247
回覆:340
積分:197
註冊:2003-01-23

發送簡訊給我
#7 引用回覆 回覆 發表時間:2005-05-09 12:00:50 IP:61.218.xxx.xxx 未訂閱
oracle 我不會 但你可以看看沒有 取秒鐘 及時間 加減之Function 用以下語法較簡單 Select DATEADD(second, -cast(DATENAME (second,使用日期) as int) ,使用日期) AS 時間 , Count(ID) AS 筆數 From dbo.AB出貨單分錄 Group by DATEADD(second, -cast(DATENAME (second,使用日期) as int) ,使用日期)
suntree
一般會員


發表:7
回覆:16
積分:9
註冊:2005-01-21

發送簡訊給我
#8 引用回覆 回覆 發表時間:2005-05-09 12:04:39 IP:220.135.xxx.xxx 未訂閱
jeffreck 不好意思 打擾你一整個早上了@@"    結果 問題出在 我沒把題目說好 不過 你有跟我說 如何使用^^真的粉謝謝 剩下的 我會想辦法轉成 >
suntree
一般會員


發表:7
回覆:16
積分:9
註冊:2005-01-21

發送簡訊給我
#9 引用回覆 回覆 發表時間:2005-05-09 17:12:10 IP:220.135.xxx.xxx 未訂閱
不好意思 我又來打擾了 但題目還是類似於此 所以 我沒有發新的文章 而又結案了 不過 還是希望 會的人可以 幫忙一下>"< 我去看一下 我的ORACLE的資料庫日期格式(是直接用 BCB6的 TDateTime) 來存取的 所以 資料內容變如下 時間 編號 ------------ 2005/5/8 上午 09:00:00 1 2005/5/8 上午 09:00:10 1 2005/5/8 上午 09:00:20 1 … 如今 我想要把秒拿掉 來做為群組值 該如何去做呢... jeffreck的想法 我覺得是對的,但ORACLE的語法 我真的不大熟 我用了TO_DATE(vd_time,'YYYY/MM/DD 上午 HH:MI') 來去試 或者 打"上午"拿掉 他都說 我是錯的 請指教一下@@"我找了好多文章 似乎都沒有 說到關於此的 或者 可以提試我一個指令^^謝謝 PS.假如覺得 是該發新文的來提問的話 請提醒我喔 這個一直想不出來 跟本不想做別的事@@"繼續努力
suntree
一般會員


發表:7
回覆:16
積分:9
註冊:2005-01-21

發送簡訊給我
#10 引用回覆 回覆 發表時間:2005-05-09 17:33:35 IP:220.135.xxx.xxx 未訂閱
不好意思 又來打擾了^^" 剛去翻了一下 ORACLE的書 發現 原來是自己觀念不清楚,哪有人拿 DATE在去轉TO_DATE 我終於想出用分鍾 做間隔的指令了 >
系統時間:2024-04-29 9:59:24
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!