ผู้เขียน หัวข้อ: คำสั่งเปรียบเทียบ 2 ตาราง ต้องเขียนยังไงครับ  (อ่าน 9523 ครั้ง)

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

ออฟไลน์ Bond_007

  • Hero Member
  • *****
  • กระทู้: 1,533
  • เมื่อก่อนเคยรักมากเท่าไหร่มันยังคงรักมากเท่านั้น
  • Respect: +2
    • ดูรายละเอียด
คำสั่งเปรียบเทียบตาราง opitemrece และ  doctor_fee_list รายการ DF มีที่ตาราง opitemrece แต่ไม่มีใน doctor_fee_list ต้องเขียนยังไงครับ ขอบคุณครับ

ของผมเขียนแบบนี้ มันไม่ถูกอะครับไม่ทรายว่าต้องแก้ตรงไหนครับ
select o.vn,o.hn,o.an,o.icode,n.name,o.unitprice,o.vstdate,o.vsttime,d.name,df.icode  from opitemrece o
left outer join nondrugitems n on n.icode = o.icode
left outer join doctor d on d.code = o.doctor
left outer join doctor_fee_list df on df.vn = o.vn

where n.item_is_df = "Y"  and o.vstdate between '2010-05-01' and '2010-05-30'  and (df.icode is null or df.icode = ' ')
โรงพยาบาลศิริเวชลำพูน
Hosxp version 3.53.7.16
ขอขบคุณ อาจารย์ชัยพร,อ.อ็อด,อ.เกื้อ,พี่เอก,พี่กิติศักดิ์,พี่เข้ม,พี่ไสว,พี่ terminator 2010,พี่pikepid,พี่udomchock ,พี่ขวด,พี่เจมส์,ป๋าJdadmin,พี่กานดา admin ทุกๆท่าน และนางฟ้า BMS

ทำเพื่อใครสักคนฉันได้ทำเพื่อความรัก
ร้องให้สักคนฉันก็ร้องจากหัวใจ
รักที่มันต้องจบมันก็ยังงดงาม ฉันยังจำไว้

Nologo How to be hosxp star

ออฟไลน์ Bond_007

  • Hero Member
  • *****
  • กระทู้: 1,533
  • เมื่อก่อนเคยรักมากเท่าไหร่มันยังคงรักมากเท่านั้น
  • Respect: +2
    • ดูรายละเอียด
Re: คำสั่งเปรียบเทียบ 2 ตาราง ต้องเขียนยังไงครับ
« ตอบกลับ #1 เมื่อ: มิถุนายน 29, 2010, 09:19:58 AM »
0
จากรูปมันจะอยู่ในตาราง opitemrece โดยรายการ DF คือ DF ฉีดยาเข้าข้อ และค่าบริการผู้ป่วยนอก นอกเวลาราชการ
โรงพยาบาลศิริเวชลำพูน
Hosxp version 3.53.7.16
ขอขบคุณ อาจารย์ชัยพร,อ.อ็อด,อ.เกื้อ,พี่เอก,พี่กิติศักดิ์,พี่เข้ม,พี่ไสว,พี่ terminator 2010,พี่pikepid,พี่udomchock ,พี่ขวด,พี่เจมส์,ป๋าJdadmin,พี่กานดา admin ทุกๆท่าน และนางฟ้า BMS

ทำเพื่อใครสักคนฉันได้ทำเพื่อความรัก
ร้องให้สักคนฉันก็ร้องจากหัวใจ
รักที่มันต้องจบมันก็ยังงดงาม ฉันยังจำไว้

Nologo How to be hosxp star

ออฟไลน์ Bond_007

  • Hero Member
  • *****
  • กระทู้: 1,533
  • เมื่อก่อนเคยรักมากเท่าไหร่มันยังคงรักมากเท่านั้น
  • Respect: +2
    • ดูรายละเอียด
Re: คำสั่งเปรียบเทียบ 2 ตาราง ต้องเขียนยังไงครับ
« ตอบกลับ #2 เมื่อ: มิถุนายน 29, 2010, 09:22:24 AM »
0
จากรูปจะอยู่ในตาราง  doctor_fee_list  ซึ่งมันว่างเปล่า
โรงพยาบาลศิริเวชลำพูน
Hosxp version 3.53.7.16
ขอขบคุณ อาจารย์ชัยพร,อ.อ็อด,อ.เกื้อ,พี่เอก,พี่กิติศักดิ์,พี่เข้ม,พี่ไสว,พี่ terminator 2010,พี่pikepid,พี่udomchock ,พี่ขวด,พี่เจมส์,ป๋าJdadmin,พี่กานดา admin ทุกๆท่าน และนางฟ้า BMS

ทำเพื่อใครสักคนฉันได้ทำเพื่อความรัก
ร้องให้สักคนฉันก็ร้องจากหัวใจ
รักที่มันต้องจบมันก็ยังงดงาม ฉันยังจำไว้

Nologo How to be hosxp star

ออฟไลน์ Bond_007

  • Hero Member
  • *****
  • กระทู้: 1,533
  • เมื่อก่อนเคยรักมากเท่าไหร่มันยังคงรักมากเท่านั้น
  • Respect: +2
    • ดูรายละเอียด
Re: คำสั่งเปรียบเทียบ 2 ตาราง ต้องเขียนยังไงครับ
« ตอบกลับ #3 เมื่อ: มิถุนายน 29, 2010, 11:35:49 AM »
0
ขออนุญาติดันครับ
โรงพยาบาลศิริเวชลำพูน
Hosxp version 3.53.7.16
ขอขบคุณ อาจารย์ชัยพร,อ.อ็อด,อ.เกื้อ,พี่เอก,พี่กิติศักดิ์,พี่เข้ม,พี่ไสว,พี่ terminator 2010,พี่pikepid,พี่udomchock ,พี่ขวด,พี่เจมส์,ป๋าJdadmin,พี่กานดา admin ทุกๆท่าน และนางฟ้า BMS

ทำเพื่อใครสักคนฉันได้ทำเพื่อความรัก
ร้องให้สักคนฉันก็ร้องจากหัวใจ
รักที่มันต้องจบมันก็ยังงดงาม ฉันยังจำไว้

Nologo How to be hosxp star

ออฟไลน์ champ_db

  • Full Member
  • ***
  • กระทู้: 180
  • Respect: 0
    • ดูรายละเอียด
Re: คำสั่งเปรียบเทียบ 2 ตาราง ต้องเขียนยังไงครับ
« ตอบกลับ #4 เมื่อ: มิถุนายน 29, 2010, 12:42:19 PM »
0
คำสั่งเปรียบเทียบตาราง opitemrece และ  doctor_fee_list รายการ DF มีที่ตาราง opitemrece แต่ไม่มีใน doctor_fee_list ต้องเขียนยังไงครับ ขอบคุณครับ


ที่รพ.ผม ไม่ได้ใช้ DF ไม่ค่อยรู้เรื่อง data dic ของระบบนี้
แต่ถ้า "รายการ DF มีที่ตาราง opitemrece แต่ไม่มีใน doctor_fee_list ต้องเขียนยังไงครับ ขอบคุณครับ
" อาจจะลองเขียนแบบ select ซ้อน select แบบประมาณนี้ได้หรือเปล่าลองดูละกันนะครับ

select * from opitemrece where "field df ที่มีในตาราง opitemrece" not in (select "field df ที่อยู่ในตาราง doctor_fee_list" from doctor_fee_list  )

ลองดูนะครับ มือใหม่เหมือนกันครับ
หมอแชมป์ (Training state)
อดีตประธาน IT โรงพยาบาลเดิมบางนางบวช จังหวัดสุพรรณบุรี
ขึ้นระบบโดยทีม IT รพ.เดิมบางนางบวช  :  วันอาทิตย์ที่ 23/8/52

http://dbhosp.com/
ขอขอบคุณ ทีมที่ปรึกษา  :  อ.น้าชำนาญ อ.วุฒิ อ.กิจ อ.นาถ อ.อ๊อด

ออฟไลน์ เกื้อกูล ครับ..

  • Hero Member
  • *****
  • กระทู้: 12,611
  • Respect: +169
    • ดูรายละเอียด
    • โรงพยาบาลปากท่อ
Re: คำสั่งเปรียบเทียบ 2 ตาราง ต้องเขียนยังไงครับ
« ตอบกลับ #5 เมื่อ: มิถุนายน 29, 2010, 13:44:20 PM »
0
หรือว่าจะเป็น  select * from opitemrece   where icode not in (select icode from doctor_free_list) and rxdate between '2010-06-20' and '2010-06-25'
Implement  HOSxP  Start 2548 ---> NOW!
Station : 140 Client   V.3 Version  3.67.7.8
Server  : CENTOS 7 +MySQL maria 10.x.x

ออฟไลน์ Bond_007

  • Hero Member
  • *****
  • กระทู้: 1,533
  • เมื่อก่อนเคยรักมากเท่าไหร่มันยังคงรักมากเท่านั้น
  • Respect: +2
    • ดูรายละเอียด
Re: คำสั่งเปรียบเทียบ 2 ตาราง ต้องเขียนยังไงครับ
« ตอบกลับ #6 เมื่อ: มิถุนายน 29, 2010, 14:41:40 PM »
0
เหมือนจะไม่ได้ครับ
หรือว่าจะเป็น  select * from opitemrece   where icode not in (select icode from doctor_free_list) and rxdate between '2010-06-20' and '2010-06-25'
โรงพยาบาลศิริเวชลำพูน
Hosxp version 3.53.7.16
ขอขบคุณ อาจารย์ชัยพร,อ.อ็อด,อ.เกื้อ,พี่เอก,พี่กิติศักดิ์,พี่เข้ม,พี่ไสว,พี่ terminator 2010,พี่pikepid,พี่udomchock ,พี่ขวด,พี่เจมส์,ป๋าJdadmin,พี่กานดา admin ทุกๆท่าน และนางฟ้า BMS

ทำเพื่อใครสักคนฉันได้ทำเพื่อความรัก
ร้องให้สักคนฉันก็ร้องจากหัวใจ
รักที่มันต้องจบมันก็ยังงดงาม ฉันยังจำไว้

Nologo How to be hosxp star

ออฟไลน์ shone17

  • Full Member
  • ***
  • กระทู้: 101
  • Respect: 0
    • ดูรายละเอียด
Re: คำสั่งเปรียบเทียบ 2 ตาราง ต้องเขียนยังไงครับ
« ตอบกลับ #7 เมื่อ: กรกฎาคม 11, 2010, 10:59:46 AM »
0
ขอบคุณครับที่แนะนำมากๆ

ออฟไลน์ Bond_007

  • Hero Member
  • *****
  • กระทู้: 1,533
  • เมื่อก่อนเคยรักมากเท่าไหร่มันยังคงรักมากเท่านั้น
  • Respect: +2
    • ดูรายละเอียด
Re: คำสั่งเปรียบเทียบ 2 ตาราง ต้องเขียนยังไงครับ
« ตอบกลับ #8 เมื่อ: มีนาคม 15, 2011, 09:03:50 AM »
0
ผมลองเขียนคำสั่งใหม่
select  o.hn ,concat (p.pname,p.fname,"   ",p.lname) as '????-????',pt.name as '?????',o.vstdate, o.icode ,n.name,doc.icode,d.name
from opitemrece  o
left outer  join nondrugitems n on n.icode = o.icode
left outer join patient p on p.hn = o.hn
left outer join doctor d on d.code = o.doctor
left outer join  pttype pt on pt.pttype = o.pttype
left outer join doctor_fee_list doc on doc.vn = o.vn

where n.item_is_df='Y'
and vstdate between '2011-02-01' and '2011-02-31'
and o.icode <> doc.icode

ปรากฎว่ามีค่าบางตัวที่ไม่ถูกต้องตามรูปครับคือ icode ทั้งสองค่ามีเหมือนกันแต่อยู่คนละบรรทัดกันมันเลยดูไม่ถูกต้องไม่ทราบว่าต้องแก้ยังไงครับ
โรงพยาบาลศิริเวชลำพูน
Hosxp version 3.53.7.16
ขอขบคุณ อาจารย์ชัยพร,อ.อ็อด,อ.เกื้อ,พี่เอก,พี่กิติศักดิ์,พี่เข้ม,พี่ไสว,พี่ terminator 2010,พี่pikepid,พี่udomchock ,พี่ขวด,พี่เจมส์,ป๋าJdadmin,พี่กานดา admin ทุกๆท่าน และนางฟ้า BMS

ทำเพื่อใครสักคนฉันได้ทำเพื่อความรัก
ร้องให้สักคนฉันก็ร้องจากหัวใจ
รักที่มันต้องจบมันก็ยังงดงาม ฉันยังจำไว้

Nologo How to be hosxp star