Tôi đang cố chạy một số báo cáo và phải giải quyết toàn bộ vấn đề về giờ lao động của nhân viên qua nửa đêm. Nó xảy ra với tôi mặc dù rằng tôi có thể chia các hồ sơ mà qua nửa đêm thành hai hồ sơ như thể nhân viên đã hết giờ vào nửa đêm và đồng thời quay trở lại vào lúc nửa đêm do đó tránh được vấn đề nửa đêm hoàn toàn.Ghi lại các bản ghi thời gian qua nửa đêm
Vì vậy, nếu tôi có:
EmployeeId InTime OutTime
--- ----------------------- -----------------------
1 2012-01-18 19:50:04.437 2012-01-19 03:30:02.433
chị điều gì sẽ là cách thanh lịch nhất để tách hồ sơ này như sau:
EmployeeId InTime OutTime
--- ----------------------- -----------------------
1 2012-01-18 19:50:04.437 2012-01-19 00:00:00.000
1 2012-01-19 00:00:00.000 2012-01-19 03:30:02.433
Và vâng, tôi đã nghĩ kỹ lưỡng thông qua ảnh hưởng gì điều này có thể có về chức năng hiện có ... đó là lý do tại sao tôi chọn làm điều này trong một bảng tạm thời sẽ không ảnh hưởng đến chức năng hiện có.
Xem http://www.sqlteam.com/forums/topic.asp?TOPIC_ID=42516&bcsi_scan_0070CC03028EB70D=JJykjVHNGapjNgIKjEMdLQkAAADDDLIH&bcsi_scan_filename=topic.asp không giống chính xác. Hơn cả giải pháp dựa trên SQL 2k của nó. Nhưng tôi hy vọng nó có thể cung cấp cho bạn một số gợi ý. – vmvadivel
Vì vậy, nửa đêm qua của nó ... vấn đề là gì ... tổng số giờ làm việc trong một ca nhất định? hoặc nếu nó vượt qua cả hai ngày, mà ngày nó sẽ hiển thị trong? – DRapp
@DRapp Đối với mục đích của báo cáo 'này' (mặc dù không phải tất cả) lao động sẽ xuất hiện vào ngày nó thực sự thuộc về ... không nhất thiết là ngày khi nhân viên bắt đầu ca làm việc của họ. Vì vậy, đó là lý do tại sao tôi nghĩ rằng đây là giải pháp tốt nhất để thực hiện điều đó theo cách mà dữ liệu có ý nghĩa nhất để làm việc. –