台灣最大程式設計社群網站
線上人數
1399
 
會員總數:246086
討論主題:189663
歡迎您免費加入會員
討論區列表 >> ASP >> 找一個月內不存在的日期
[]  
[我要回覆]
1
回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
找一個月內不存在的日期
價值 : 100 QP  點閱數:159 回應數:9
樓主

永恆
初學者
1 31
976 52
發送站內信


如圖所示
共有8個記錄,每個記錄日期都不一樣

我如何把不存在的日期列出來
3/10/2020,4/10/2020,5/10/2020,6/10/2020,7/10/2020,8/10/2020......
這些日期都是不存的
我如何把他們全列出來,並統計這個月[10月(這個月有31天,其他月份有30/28天又該怎麼做)]有多少個不存在日期

搜尋相關Tags的文章: [ 日期 ] ,
本篇文章發表於2020-10-01 23:31
1樓
回應

P陳
檢舉此回應
1.建立一個包含所有日期的 全日期 (以2020/10 而言的話會有31筆)

2.用查詢
A.會查到所有日期
SELECT 全日期.date1, 資料表1.date1
FROM 全日期 LEFT JOIN 資料表1 ON 全日期.date1 = 資料表1.date1;

B.會查到有空白日期
SELECT 全日期.date1, 資料表1.date1
FROM 全日期 LEFT JOIN 資料表1 ON 全日期.date1 = 資料表1.date1
WHERE (((資料表1.date1) Is Null));

3.如果10/9 全公司放假,全部不上班,全日期中只要不放 10/9 ,那就不會出現在空白了
本篇文章回覆於2020-10-02 11:30
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
2樓
作者回應

永恆
檢舉此回應
謝你的回覆
但不是我想要的
本篇文章回覆於2020-10-02 20:51
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
3樓
作者回應

永恆
檢舉此回應
還是說 
如你的方法所示
新增一個資料表 再 配合現在的資料表 可以做到我想要的

是必須要新增一個資料表輔助,才可以做到我想要做的嗎?

因為從一開始我的想法都沒有想過新增一個資料表輔助
不能從代碼下手?
本篇文章回覆於2020-10-02 21:00
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
4樓
回應

P陳
檢舉此回應
所提的那個方法, 是最簡便的方法了,只要用查詢就解決了。

再來就是要寫程式了 類似如下(以下觀念對,但語法您要自己測試了)

set rs1=currentdb.opendtable("workrs",dbopendynaset)
for date1 = 2020/10/01 to 2020/10/31
if isnull(rs1.findfirst("date=" & date1)) then
msgbox (date1 & "不存在")
end if
next

本篇文章回覆於2020-10-03 16:08
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
5樓
作者回應

永恆
檢舉此回應
我有個新想法
1.列出這個月所有日子1-31號 A=2020/10/1;2020/10/2;2020/10/3;
2.列出這個月有記錄日子 B=2020/10/2;


3.
再將a同b相同的日期互相低消
最後就是
c=2020/10/1;2020/10/3;

這樣我就知道今個月1號 3號 沒有記錄


互相低消 這步 代碼我不知道該怎樣寫




我的想法可行?
本篇文章回覆於2020-10-05 00:08
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
6樓
作者回應

永恆
檢舉此回應
解決了
我的想法是可行的
謝謝
本篇文章回覆於2020-10-05 14:45
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
7樓
回應

Allen
捐贈 VP 給 Allen 檢舉此回應
由於這功能被叫用一次就需要
建立30筆記錄,並再去資料表找到既有記錄填到另一資料表
最後再做比較,但其實新增記錄是比較耗時的,你一人測試時不覺得慢,但多人時會有問題

所以,用程式臨時建一個temp table,或實際建立記錄, 再跟既有的做join,應該就能找出來你要的了


本篇文章回覆於2020-10-06 14:26
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
8樓
作者回應

永恆
檢舉此回應
謝謝回覆

但是你們的方法都不太合適

還是我上面那個方法比較合適我
本篇文章回覆於2020-10-10 18:05
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
9樓
回應

P陳
檢舉此回應
程式處理方法百百種。自已適合的就好。
如果這個問題已處理完成,請記得將這個討論串關閉。
本篇文章回覆於2020-10-10 20:45
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
   
1

回覆
如要回應,請先登入.