出勤表篩選資料問題

temple_new 2007-11-19 02:39:13
想請教各位:

有三個資料表:
1. checkinout
欄位: userid, checktime, checktype
2.userinfo
欄位: userid, name, deptid
3. deptid
欄位: deptid, deptname

其中, checkinout.checktime 記錄上下班時間
(格式2007/01/24 上午 07:59:21;2007/01/24 下午07:00:08)
checkinout.checktype 是上下班狀態(I 表上班;O表下班)

我想, Join 這三個資料表, 篩選出userid,name,deptname,及intime,outtime
其中,intime & outtime 是由checktime 所區分出來的

麻煩各位了, 謝謝
...全文
303 70 打赏 收藏 转发到动态 举报
写回复
用AI写文章
70 条回复
切换为时间正序
请发表友善的回复…
发表回复
OracleRoob 2007-11-29
  • 打赏
  • 举报
回复
不可逆。
temple_new 2007-11-29
  • 打赏
  • 举报
回复
您好:
我只看到"無滿意結貼"
可是秀出後卻變成"無滿意答案結貼"

我覺得我選錯了
可以修改嗎?

我對您們的答案很滿意的
WWWWA 2007-11-29
  • 打赏
  • 举报
回复
应该是记录问题,
点管理->输入密码,结贴
temple_new 2007-11-29
  • 打赏
  • 举报
回复
您們好:

我發現語法是正確的
只有某些人的記錄才會有問題

謝謝您們這麼有耐心地指導我

另外,我需要做結束此問題的動作嗎?
WWWWA 2007-11-29
  • 打赏
  • 举报
回复
SQL语句没有问题,上传你的MDB,数据及有问题的查询到
www.access911.net/csdn
OracleRoob 2007-11-28
  • 打赏
  • 举报
回复


或者新建一个MDB,将原来文件中的所有对象都导入到新的MDB中试试。

OracleRoob 2007-11-28
  • 打赏
  • 举报
回复
压缩修复一下MDB:

-->“工具”菜单
-->数据库实用工具
-->压缩和修复数据库
OracleRoob 2007-11-28
  • 打赏
  • 举报
回复
压缩修复一下MDB。
temple_new 2007-11-28
  • 打赏
  • 举报
回复
您好:
不好意思老給您們找麻煩

我抓回檔案執行報表
秀出下列錯誤:
您輸入作為事件屬性設定運算式 on format 產生如下錯誤:
當microsoft office access和OLE伺服器或active x 控制項通訊時發生一個問題....

我查了一下,看不出有哪裡出問題
再次麻煩您了 謝謝
WWWWA 2007-11-28
  • 打赏
  • 举报
回复
看了一下, 你自己没有设置好分组,已经修改上传www.access911.net/csdn
名为NEWDB1.RAR
OracleRoob 2007-11-28
  • 打赏
  • 举报
回复
如果都是日期类型,那么用

IIF(ISNULL(outtime),NULL,datediff("n",outtime,"2007-11-28 17:00"))

是可以的。
temple_new 2007-11-28
  • 打赏
  • 举报
回复
您好:

我查過資料類型是日期/時間
我會再試看看的 麻煩您了

你們都好熱心 好感謝您們
OracleRoob 2007-11-28
  • 打赏
  • 举报
回复
要确保你的outtime 是日期型的,而不只是: 16:30 这样的串。
temple_new 2007-11-28
  • 打赏
  • 举报
回复
您好:

我測試之後的結果是一樣的
也就是,若當天無下班記錄,會秀出"#錯誤"
不曉得是什麼原因?
wwwwb 2007-11-28
  • 打赏
  • 举报
回复
IIF(ISNULL(outtime),NULL,datediff("n",outtime,"2007-11-28 17:00"))
OR
IIF(ISNULL(outtime),0,datediff("n",outtime,"2007-11-28 17:00"))
temple_new 2007-11-28
  • 打赏
  • 举报
回复
您好:

若當天請假無下班記錄,會秀出"#錯誤"
這部份可否以null 或其它字元取代?
麻煩您了 謝謝
OracleRoob 2007-11-28
  • 打赏
  • 举报
回复
datediff("n",now(),"2007-11-28 17:00")
temple_new 2007-11-28
  • 打赏
  • 举报
回复
您好:

之前我是下在準則,所以才會秀出那兩個視窗
若新增在sql中確實就正確了
謝謝

另外,我想再請教你
如果正常下班是5點
我要計算下班時間距離5點多少分鐘,應如何處理呢?
謝謝
OracleRoob 2007-11-28
  • 打赏
  • 举报
回复
在你的数据源SQL语句中处理。
temple_new 2007-11-28
  • 打赏
  • 举报
回复
您好:

結果秀出兩個"請輸入參數值intime" & "請輸入參數值outtime" 的視窗
是時間格式的問題嗎?
加载更多回复(50)

7,712

社区成员

发帖
与我相关
我的任务
社区描述
Microsoft Office Access是由微软发布的关系数据库管理系统。它结合了 MicrosoftJet Database Engine 和 图形用户界面两项特点。
社区管理员
  • Access
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧