看板 Database 關於我們 聯絡資訊
資料庫名稱:SQLsever2007 資料庫版本: 2007 內容/問題描述:學習資料庫不久,一直有個問題,爬了很多相關文章 跟google.也不能解決問題.腦筋轉不過來. 我正在寫一隻程式.使用者可以選擇日期區間, 然後想算出這幾天中,有幾天是沒有資料的. select sum(ISNULL(computer.cts,0)*ISNULL(computerdetail.Qty,0))as 總數量 from computer left join computerdetail with (nolock) on computerdetail.CODEBAR=computer.CODEBAR where CONVERT(char(10), computer.scandate,111)>='Startday' and CONVERT(char(10), computer.scandate,111)<='Endday' 請問用什麼方法做比較好?,因為這種寫法好像不是跑迴圈的, 似乎程式不會一一從開始天跑到結束天,而是整個計算後直接送出資料 不知道我的理解對不對 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 115.79.205.136 ※ 文章網址: http://www.ptt.cc/bbs/Database/M.1413348206.A.2BA.html
Ammenze: 除非你的日期有把每天都記錄下來,否則光用SQL很難做到 10/15 13:03
BigLoser: 這位溫拿,可否把範例的表格放上來,之後說明您想要的 10/15 13:35
BigLoser: 結果,還有mssql似乎沒有2007版本 10/15 13:35
cutekid: 同意樓上,放上範例表格 10/15 13:40
bobobobo: Group By取得各日期的資料數量(有資料的日期才有),再看 10/15 14:08
bobobobo: 你是要在資料庫或外部把空缺的日期補上 10/15 14:09
bobobobo: 誤會問題...抱歉 10/15 14:10
z80380: 大大我非要顯示所有日期為0的 10/15 14:18
z80380: 而是想辦法計算有哪幾天資料為0的 10/15 14:18
z80380: 問題已解決~~謝謝CUTEKID大大!!!! 10/15 14:31