PDA

View Full Version : نحوه تلفیق ساعت ورود و خروج در یک رکورد



hamedjim
چهارشنبه 26 خرداد 1400, 13:55 عصر
سلام به دوستان و اساتید.

از یک سخت افزار ثبت ورود و خروج کارکنان، دیتا رو با فرمت زیر دریافت می کنم:



کد پرسنلی
تاریخ
زمان
نوع تردد (ورود یا خروج)


برای محاسبه و تحلیل کارکرد و مدت زمان عملکرد افراد، می خوام اطلاعات در جدول جدیدی با فیلدهای زیر ایجاد کنم:


کد پرسنلی
تاریخ
زمان ورود
زمان خروج
کارکرد



سوال من اینه که منطقی که برای این کار در نظر گرفتم درسته یا نه؟
و اگر منطقی هست با چه کامندی در SQL می تونم این کار رو انجام بدم؟
خودم سعی کردم یک بار از INSERT INTO SELECT برای درج ورودی ها و در ادامه از UPDATE برای اضافه کردن ساعت خروج استفاده کنم. اما این کار خیلی زیاد طولانی شد. لطفا راهنمایی کنید

hamedjim
چهارشنبه 03 شهریور 1400, 09:56 صبح
کسی می تونه منو برای این کار راهنمایی کنه؟
در هر روز، هر کد پرسنلی ممکنه چند بار ورود یا خروج داشته باشه

isaac23
یک شنبه 07 شهریور 1400, 10:44 صبح
به نظر من شما یه جدول داشته باشید که فقط ورود و خروج ها رو ثبت کنه و بعدش بیاید بر اساس تاریخ و کد پرسنل زمان کلی رو بدست بیارید .

کد پرسنل /زمان ورود/ زمان خروج / تاریخ

بعد بر اساس اینا اون چیزی رو که لازم دارید بدست بیارید و اپدیت کنید .

بعدش هم در کل باید دید نحوه کار کرد شما به چه صورت هست در طول روز چند بار ورود و خروج دارن
مثلا اگه 2 بار باشه یعنی دفعه ورود و دفعه بعد خروج هست...


شما می تونی بیای تعداد رکورد های که در ثبت شده برای امروز رو بدست بیاری اگه 1 بود که جدید واضافه کنه و اگه تعداد 2 بود یعنی زمان خروج هست و بیا فیلدی رو که ثبت شده رو پیدا کن و در قسمت فیلد خروج تایمش رو ثبت کن و الا اخر.

در اخر هم می تونی با یه ویو بیای محسابه کنی.

hamedjim
یک شنبه 07 شهریور 1400, 13:39 عصر
ممنون از پاسخ. اما چند تا نکته وجود داره. به هر دلیل ممکنه کاربری ورود یا خروجش رو در سیستم فراموش کرده باشه ثبت کنه. یا اینکه اشتباها به جای «خروج»، مجددا «ورود» ثبت کرده باشه (و برعکس).

به همین دلیل من به ذهنم رسید که یک جدول «ورودی» و یک جدول «خروجی» جداگانه ایجاد کنم و در نهایت اونها رو Full Join کنم. اما هنوز به جواب دلچسبی نرسیدم.

isaac23
یک شنبه 14 شهریور 1400, 18:14 عصر
جدا کردن جدول شما اتفاق خاصی برای شما نمی افته
شما توی تشخیص ورود و خروج مشکل دارید .
اینو باید در نظر بگیرید

وگرنه دو تا جدول هم داشته باشید فرقی نداره.

حالا دیگه یا باید دستی بزنن اون ورود خودشون رو یا بر اساس ساعت در نظر بگیرد و چک کنید ایا ورود هست یا خروج.