BMS-HOSxP Community
HOSxP => นอกเรื่อง => ข้อความที่เริ่มโดย: panus_t ที่ กันยายน 23, 2011, 12:09:44 PM
-
1.ที่ตาราง patient มีแต่ last_update ไม่ได้แก็บ loginname ผมลองให้คำสั่ง
select k.loginname from patient p
left outer join ksklog k on k.logtime=p.last_update
where hn="000088888"
เพื่อหา loginname ปรากฏว่าใช้เวลานานนนนน...มากครับ
2.ที่ตาราง ovst ต้องการเพิ่ม Computer_name เพื่อใช้ดึงรายงานคู่กับ staff
2 ฟิล์ด ครับ ขอขอบคุณล่วงหน้านะครับ ;D :D ;)
-
ข้อมูลข้อที่ 1 น่าจะดูได้จากตาราง patient_log ครับ ส่วนข้อมูลข้อที่ 2 รออาจารย์ท่านอื่นครับ ตอนนี้ยังคิดไม่ออก ;)
-
อยากได้เหมือนกันรับ
-
อยากได้เหมือนกันเลย ค่ะ จะได้เช็คข้อมูลได้สะดวกขึ้น
-
2.ที่ตาราง ovst ต้องการเพิ่ม Computer_name เพื่อใช้ดึงรายงานคู่กับ staff
เก็บ MAC Address แทน computer name ดีกว่าไหมครับ โอกาสเสีย/เปลี่ยน น้อยกว่าไหมครับ
เดี๋ยวเครื่องเสีย เอาไป format ใหม่ ก็อาจจะไม่ใช่ชื่อเดิม แต่ MAC เดิมแน่ๆ
-
ข้อ 2. คิดว่าถ้าจะเพิ่ม field computer หรือ staff ใน OVST อาจจะช้า
ทำให้ตอน upstructure อาจจะ load มาก ใน ตาราง ovst เพราะตารางนี้ น่าจะใหญ่พอสมควร
อาจเลี่ยงไปสร้างตารางใหม่ เช่น ovst_staff_log แล้ว
ตาราง อาจจะเป็น field ประมาณนี้
vn = varchar[12 ]
com_name= 255
ip=255
mac=255
ีstaff=35
ตอนดึงรายงาน เอา ตารางนี้ มา join ด้วย vn อีกครั้ง จะได้ข้อมูลที่ต้องการนี้ครับ เลือกได้ว่าจะกรองจากอะไร
com/ip/mac ระบบมีค่านี้ครบแล้วตอน user login ครับ หรือเก็บจาก onlineuser
select mac,count(*) as cc from ovst_staff_log l
left outer join ovst o on (l.vn=o.vn)
where o.vstdate between "2011-09-01" and "2011-09-31"
group by mac order by cc desc
ก็จะได้จำนวนคอมพิวเตอร์ ที่ทำงานกับ vn ใน ovst ครับ แยกตาม MAC
หรือ
select com_name,count(*) as cc from ovst_staff_log l
left outer join ovst o on (l.vn=o.vn)
where o.vstdate between "2011-09-01" and "2011-09-31"
group by com_name order by cc desc
ก็จะได้จำนวนคอมพิวเตอร์ ที่ทำงานกับ vn ใน ovst ครับ แยกตาม com_name
-
เห็นด้วยกับท่าน อ.โก้ อ.ดุสิต ครับ
-
เห็นด้วยกับ อ.ดุสิต ครับ ;)