ผู้เขียน หัวข้อ: ขอความช่วยเหลือการใช้คำสั่งSQLข้ามตาราง  (อ่าน 5213 ครั้ง)

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

ออฟไลน์ thannawe

  • Hero Member
  • *****
  • กระทู้: 2,904
  • Respect: +8
    • ดูรายละเอียด
ขอความช่วยเหลือการใช้คำสั่งSQLข้ามตาราง
« เมื่อ: กุมภาพันธ์ 04, 2009, 15:54:31 PM »
0
ผมใช้ HOSxP VER 3.51.10.29b
ซึ่งมีปัญหาว่า การสั่ง LAB ล่วงหน้า มีการบันทึกแต่ไม่ได้บันทึกข้อมูล nextdate และ oapp_id ในตาราง lab_app_head

หลังจากผมตรวจสอบว่าข้อมูล nextdate และ oapp_id มีข้อมูลในตาราง oapp
โจทย์มีอยู่ว่า
ผมต้องการ copy ข้อมูลจาก ฟิลด์ nextdate และ ฟิลด์ oapp_id จากตาราง oapp
ไปที่ ฟิลด์ nextdate และ ฟิลด์ oapp_id ในตาราง lab_app_head
จะเขียนคำสั่งอย่างไรคับ
เพราะผมลองเขียนดูแล้ว ยังใช้ไม่ได้ครับ ไม่งั้นต้องมานั่งรันเองทีละ vn  :'( :'( :'(
ขอบคุณล่วงหน้าครับ
ผมจะโพสคำสั่งให้ดูครับ ไม่รู้ต้องแก้ตรงไหน ช่วยผมด้วยครับ

update lab_app_head set oapp_id = (select oapp_id from oapp
where oapp.vn = lab_app_head.vn)
where vn in (select vn from oapp)

ขอบคุณล่วงหน้าคร๊าบ  :D ;D :D ;)

กิจจา ชาญธัญกรรม
นักวิชาการคอมพิวเตอร์ชำนาญการ รพ.โพธาราม จ.ราชบุรี
็HOSxP XE

doramon

  • บุคคลทั่วไป
Re: ขอความช่วยเหลือการใช้คำสั่งSQLข้ามตาราง
« ตอบกลับ #1 เมื่อ: กุมภาพันธ์ 04, 2009, 17:45:03 PM »
0
ผมใช้ HOSxP VER 3.51.10.29b
ซึ่งมีปัญหาว่า การสั่ง LAB ล่วงหน้า มีการบันทึกแต่ไม่ได้บันทึกข้อมูล nextdate และ oapp_id ในตาราง lab_app_head

หลังจากผมตรวจสอบว่าข้อมูล nextdate และ oapp_id มีข้อมูลในตาราง oapp
โจทย์มีอยู่ว่า
ผมต้องการ copy ข้อมูลจาก ฟิลด์ nextdate และ ฟิลด์ oapp_id จากตาราง oapp
ไปที่ ฟิลด์ nextdate และ ฟิลด์ oapp_id ในตาราง lab_app_head
จะเขียนคำสั่งอย่างไรคับ
เพราะผมลองเขียนดูแล้ว ยังใช้ไม่ได้ครับ ไม่งั้นต้องมานั่งรันเองทีละ vn  :'( :'( :'(
ขอบคุณล่วงหน้าครับ
ผมจะโพสคำสั่งให้ดูครับ ไม่รู้ต้องแก้ตรงไหน ช่วยผมด้วยครับ

update lab_app_head set oapp_id = (select oapp_id from oapp
where oapp.vn = lab_app_head.vn)
where vn in (select vn from oapp)

ขอบคุณล่วงหน้าคร๊าบ  :D ;D :D ;)



ถ้าจำไม่ผิด หมอเก้ง เคยข้อไว้อยู่ในบอร์ด นะครับ
หาดูก่อน


ออฟไลน์ มนตรี บอยรักยุ้ยคนเดียว

  • Hero Member
  • *****
  • กระทู้: 5,369
  • Respect: +12
    • ดูรายละเอียด
    • โรงพยาบาลชุมชน ด่านมะขามเตี้ย
Re: ขอความช่วยเหลือการใช้คำสั่งSQLข้ามตาราง
« ตอบกลับ #2 เมื่อ: กุมภาพันธ์ 04, 2009, 20:39:12 PM »
0
ผมใช้ HOSxP VER 3.51.10.29b
ซึ่งมีปัญหาว่า การสั่ง LAB ล่วงหน้า มีการบันทึกแต่ไม่ได้บันทึกข้อมูล nextdate และ oapp_id ในตาราง lab_app_head

หลังจากผมตรวจสอบว่าข้อมูล nextdate และ oapp_id มีข้อมูลในตาราง oapp
โจทย์มีอยู่ว่า
ผมต้องการ copy ข้อมูลจาก ฟิลด์ nextdate และ ฟิลด์ oapp_id จากตาราง oapp
ไปที่ ฟิลด์ nextdate และ ฟิลด์ oapp_id ในตาราง lab_app_head
จะเขียนคำสั่งอย่างไรคับ
เพราะผมลองเขียนดูแล้ว ยังใช้ไม่ได้ครับ ไม่งั้นต้องมานั่งรันเองทีละ vn  :'( :'( :'(
ขอบคุณล่วงหน้าครับ
ผมจะโพสคำสั่งให้ดูครับ ไม่รู้ต้องแก้ตรงไหน ช่วยผมด้วยครับ

update lab_app_head set oapp_id = (select oapp_id from oapp
where oapp.vn = lab_app_head.vn)
where vn in (select vn from oapp)

ขอบคุณล่วงหน้าคร๊าบ  :D ;D :D ;)



update lab_app_head left outer join oapp on oapp.vn = lab_app_head.vn
set lab_app_head.oapp_id = (select oapp.oapp_id from oapp
where oapp.vn = lab_app_head.vn)
where lab_app_head.vn in (select oapp.vn from oapp)

ผมลองแก้ ..................ลองทดสอบ................
ไม่รู้ว่าถูกหรือเปล่ามือใหม่ครับ
« แก้ไขครั้งสุดท้าย: กุมภาพันธ์ 04, 2009, 20:42:35 PM โดย บอย(ด่านมะขามเตี้ย) »
เริ่ม11พย.2548OPD-Paperlessพร้อมHOSxPลดโลกร้อน
IPD-Lesspaper1ตค2560ระบบDmsByNeoNetwork
IPD-Paperless1พ.ค2562ระบบHOSxPXE4
MT-Oracle9.3+MariaDB-10.4.xx,SL-Oracle9.3+MariaDB-11.0.xx
LOG=MySQL-8.4.xx,INV=PostgreSQL11

ออฟไลน์ thannawe

  • Hero Member
  • *****
  • กระทู้: 2,904
  • Respect: +8
    • ดูรายละเอียด
Re: ขอความช่วยเหลือการใช้คำสั่งSQLข้ามตาราง
« ตอบกลับ #3 เมื่อ: กุมภาพันธ์ 04, 2009, 21:39:49 PM »
0
ผมใช้ HOSxP VER 3.51.10.29b
ซึ่งมีปัญหาว่า การสั่ง LAB ล่วงหน้า มีการบันทึกแต่ไม่ได้บันทึกข้อมูล nextdate และ oapp_id ในตาราง lab_app_head

หลังจากผมตรวจสอบว่าข้อมูล nextdate และ oapp_id มีข้อมูลในตาราง oapp
โจทย์มีอยู่ว่า
ผมต้องการ copy ข้อมูลจาก ฟิลด์ nextdate และ ฟิลด์ oapp_id จากตาราง oapp
ไปที่ ฟิลด์ nextdate และ ฟิลด์ oapp_id ในตาราง lab_app_head
จะเขียนคำสั่งอย่างไรคับ
เพราะผมลองเขียนดูแล้ว ยังใช้ไม่ได้ครับ ไม่งั้นต้องมานั่งรันเองทีละ vn  :'( :'( :'(
ขอบคุณล่วงหน้าครับ
ผมจะโพสคำสั่งให้ดูครับ ไม่รู้ต้องแก้ตรงไหน ช่วยผมด้วยครับ

update lab_app_head set oapp_id = (select oapp_id from oapp
where oapp.vn = lab_app_head.vn)
where vn in (select vn from oapp)

ขอบคุณล่วงหน้าคร๊าบ  :D ;D :D ;)



update lab_app_head left outer join oapp on oapp.vn = lab_app_head.vn
set lab_app_head.oapp_id = (select oapp.oapp_id from oapp
where oapp.vn = lab_app_head.vn)
where lab_app_head.vn in (select oapp.vn from oapp)

ผมลองแก้ ..................ลองทดสอบ................
ไม่รู้ว่าถูกหรือเปล่ามือใหม่ครับ

ยังไม่ได้ครับ
ขอบคุณครับ อ. บอย
รอ อ.ท่านอื่น ช่วยอยู่ครับ ;) ;) :D ;)
กิจจา ชาญธัญกรรม
นักวิชาการคอมพิวเตอร์ชำนาญการ รพ.โพธาราม จ.ราชบุรี
็HOSxP XE

ออฟไลน์ thannawe

  • Hero Member
  • *****
  • กระทู้: 2,904
  • Respect: +8
    • ดูรายละเอียด
Re: ขอความช่วยเหลือการใช้คำสั่งSQLข้ามตาราง
« ตอบกลับ #4 เมื่อ: กุมภาพันธ์ 04, 2009, 22:30:14 PM »
0
 ;) :D ;)  ;) :D
ได้แล้วครับ คำสั่งตามนี้ครับ

update lab_app_head set nextdate = (select oapp.nextdate
from oapp,ovst where oapp.vn = ovst.vn
 and ovst.vn = lab_app_head.vn limit 1) where nextdate is null


แบบที่สองแบบ แยก คลีนิก
update lab_app_head set nextdate = (select oapp.nextdate
from oapp,ovst where oapp.vn = ovst.vn
 and ovst.vn = lab_app_head.vn and oapp.clinic = '999' limit 1)
where nextdate is null and form_name = 'Lab_Form_Name

เปลียนเลข 999 เป็นเลขคลินิก 
ได้คำสั่งมาจาก อ.อ๊อดครับ
ขอบคุณ อ.อ๊อด ครับ     :D ;D :D

อันนี้ผมทำเองครับ ก็ใช้ได้
update lab_app_head set oapp_id = (select oapp_id from oapp where
 oapp.vn = lab_app_head.vn limit 1)
where vn in (select vn from oapp)



ขอบคุณ.บอยด้วยครับ ที่พยายามให้ความช่วยเหลือ  :D ;D
« แก้ไขครั้งสุดท้าย: กุมภาพันธ์ 04, 2009, 22:36:50 PM โดย TanKit(กิจ) »
กิจจา ชาญธัญกรรม
นักวิชาการคอมพิวเตอร์ชำนาญการ รพ.โพธาราม จ.ราชบุรี
็HOSxP XE