ผู้เขียน หัวข้อ: ช่วยดู script ให้บ้างนะครับ ให้คำนวณวันส่ง chart ช้าแต่ไม่นับวันหยุด  (อ่าน 4981 ครั้ง)

0 สมาชิก และ 1 บุคคลทั่วไป กำลังดูหัวข้อนี้

ออฟไลน์ C H O K E

  • Full Member
  • ***
  • กระทู้: 203
  • Respect: +1
    • ดูรายละเอียด
    • โรงพยาบาลอุทัยธานี
SELECT i.an,i.hn,i.regdate,w.`name`as wardname,i.dchdate,i.receive_chart_date_time
,month(i.receive_chart_date_time)-month(i.dchdate) as monthcount,day(i.receive_chart_date_time)-day(i.dchdate) as datecount,d.`name` as doctorname FROM ipt i
left join ward w on w.ward=i.ward
left join doctor d on d.`code`=i.dch_doctor
WHERE i.dchdate BETWEEN '2011-10-01' and '2011-10-31'

HAVING datecount>'7'

จะให้ไม่เอาวันหยุดที่เราใส่ไว้ในตาราง holiday มาคิด จะใส่คำสั่งแบบไหนดีครับ ขอบคุณครับ
Uthaithani Hospital  อ.เมือง จ.อุทัยธานี
( ขึ้นระบบ 1 ตุลาคม 2553 )

ออฟไลน์ yokyai

  • Hero Member
  • *****
  • กระทู้: 1,462
  • Respect: +9
    • ดูรายละเอียด
SELECT i.an,i.hn,i.regdate,w.`name`as wardname,i.dchdate,i.receive_chart_date_time
,month(i.receive_chart_date_time)-month(i.dchdate) as monthcount,day(i.receive_chart_date_time)-day(i.dchdate) as datecount,d.`name` as doctorname FROM ipt i
left join ward w on w.ward=i.ward
left join doctor d on d.`code`=i.dch_doctor
WHERE i.dchdate BETWEEN '2011-10-01' and '2011-10-31'

HAVING datecount>'7'

จะให้ไม่เอาวันหยุดที่เราใส่ไว้ในตาราง holiday มาคิด จะใส่คำสั่งแบบไหนดีครับ ขอบคุณครับ
เพิ่มเงื่อนไขได้ไหมครับว่า and i.dchdate not in (select holiday_date from holiday) น่าจะได้ ลองดู
Sakaowrat Choocherd(Administrator) Information Technologist
Bangyai Hospital(30 beds)
HOSxP = 16_May_2008
Master and Slave : DELL-R730 Server Intel Xeon 8Core(2Units)
,Ram64 GB,HDD600(10k)x4,Raid5,CentOS 7.0 64 bit
,MySQL 10.1.10-MariaDB
(3 March 2016) With BMSxTraBackupGUI

ออฟไลน์ C H O K E

  • Full Member
  • ***
  • กระทู้: 203
  • Respect: +1
    • ดูรายละเอียด
    • โรงพยาบาลอุทัยธานี
ก็ยังไม่ได้นะครับ

คือผมต้องการให้เวลาเราคำนวณค่าออกมาเป็น สมมมุติว่า datecount = 10 ในค่า 10 นี้ไม่ให้นับวันหยุดที่อยู่ในตาราง holiday นะครับ

day(i.receive_chart_date_time)-day(i.dchdate) as datecount ตรงนี้นะครับ ทำไงให้ไม่เอาวันหยุดมาคำนวณด้วยนะครับ
Uthaithani Hospital  อ.เมือง จ.อุทัยธานี
( ขึ้นระบบ 1 ตุลาคม 2553 )

ออฟไลน์ chitvichai

  • Full Member
  • ***
  • กระทู้: 103
  • Respect: +5
    • ดูรายละเอียด
    • รพ.เมืองปาน
ก็ยังไม่ได้นะครับ

คือผมต้องการให้เวลาเราคำนวณค่าออกมาเป็น สมมมุติว่า datecount = 10 ในค่า 10 นี้ไม่ให้นับวันหยุดที่อยู่ในตาราง holiday นะครับ

day(i.receive_chart_date_time)-day(i.dchdate) as datecount ตรงนี้นะครับ ทำไงให้ไม่เอาวันหยุดมาคำนวณด้วยนะครับ
อ้างถึง
แต่ตารางวันหยุดต้องมีวันหยุดครบนะครับ
โค๊ด: [Select]

day(i.receive_chart_date_time)-day(i.dchdate) as `นับรวมวันหยุด`,
(select count(x.*) from holiday x
where x.holidaydate between i.dchdate and i.recive_chart_date_time) as `นับวันหยุด`,
day(i.receive_chart_date_time)-day(i.dchdate)-
(select count(x.*) from holiday x
where x.holidaydate between i.dchdate and i.recive_chart_date_time) as `ไม่นับวันหยุด`
« แก้ไขครั้งสุดท้าย: กุมภาพันธ์ 24, 2012, 14:41:14 PM โดย chitvichai »
โรงพยาบาลเมืองปาน (ขนาด 30 เตียง) จังหวัดลำปาง โทร 054-276345-6
Master Server : HP Proliant DL360G7 Ram DDR3 1333 ECC 2x2 GB  HDD 2x146 GB  CentOS 6.2 Linux MySQL 5.5.11
Slave Server I : Acer Altos G540 Ram DDR2 667 ECC 2x1 GB HDD 2x146 GB Redhat Ent 5.2 Linux Mysql 5.1.29
Slave Server II : คอมประกอบ Ram DDR2 667  2x2 GB HDD SATA 160 GB Endian Firewall Community release 2.4.1 Mysql 5.5.24
Client : Windows XP Sp2
ขึ้นระบบ 1 มิ.ย.50

ออฟไลน์ C H O K E

  • Full Member
  • ***
  • กระทู้: 203
  • Respect: +1
    • ดูรายละเอียด
    • โรงพยาบาลอุทัยธานี
 :) ขอบคุณครับ
Uthaithani Hospital  อ.เมือง จ.อุทัยธานี
( ขึ้นระบบ 1 ตุลาคม 2553 )