ผู้เขียน หัวข้อ: สอบถามเรื่อง SQL  (อ่าน 4675 ครั้ง)

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

ออฟไลน์ autobotz

  • Jr. Member
  • **
  • กระทู้: 85
  • Respect: 0
    • ดูรายละเอียด
สอบถามเรื่อง SQL
« เมื่อ: กันยายน 13, 2011, 11:35:17 AM »
0
รบกวนสอบถามหน่อยครับ ผมต้องการดึงข้อมูลจากตาราง vn_stat  โดยที่ pdx มีรหัส s,t,v,x,y,z ต้องเขียนคำสั่งเงื่อนไขอย่างไรครับพอดี "เคย" ทำได้แต่ "ลืม"  ยังไงก็รบกวนด้วยนะครับ
นายทัศนัย  อ้ายพุก
เจ้าหน้าที่คอมพิวเตอร์ชั้น 4
โรงพยาบาลค่ายพิชัยดาบหัก

40 Client
Main Server : HP
CPU : Intel Xeon X3450 2.67GHz 8 cores 64 bit
RAM : 16 Gb
OS : CentOs 6.5
DB : MySQL Percona 5.5.33-31.1

Secondary Server HP
CPU : Intel Xeon X3450 2.67GHz 8 cores 64 bit
RAM : 4 Gb
OS : CentOs 6.5
DB : MySQL Percona 5.5.33-31.1


Client version 3.56.11.19
Structure  3.56.11.19

ออฟไลน์ realaerm

  • Full Member
  • ***
  • กระทู้: 152
  • Aerm
  • Respect: +1
    • ดูรายละเอียด
Re: สอบถามเรื่อง SQL
« ตอบกลับ #1 เมื่อ: กันยายน 13, 2011, 11:40:33 AM »
0
รบกวนสอบถามหน่อยครับ ผมต้องการดึงข้อมูลจากตาราง vn_stat  โดยที่ pdx มีรหัส s,t,v,x,y,z ต้องเขียนคำสั่งเงื่อนไขอย่างไรครับพอดี "เคย" ทำได้แต่ "ลืม"  ยังไงก็รบกวนด้วยนะครับ

ลองแบบนี้ดูนะครับ

select pdx from vn_stat where pdx like('S%') or pdx like('T%') or pdx like('V%') or pdx like('X%') or pdx like('Y%') or pdx like('Z%')
---------------------------------------------------------
Mr. Sitichart  Wongyuttanapong
Inventory  Team
---------------------------------------------------------
Bangkok  Medical  Software  Co,.Ltd
---------------------------------------------------------

ออฟไลน์ Svl2Nuk3

  • Hero Member
  • *****
  • กระทู้: 793
  • Respect: 0
    • ดูรายละเอียด
Re: สอบถามเรื่อง SQL
« ตอบกลับ #2 เมื่อ: กันยายน 13, 2011, 12:29:21 PM »
0
select * from vn_stat where
left(pdx,1) in ( 'S' , 'T' , 'V' , 'X' , 'Y' , 'Z' )  or
left(dx0,1) in ( 'S' , 'T' , 'V' , 'X' , 'Y' , 'Z' )  or
left(dx1,1) in ( 'S' , 'T' , 'V' , 'X' , 'Y' , 'Z' )  or
left(dx2,1) in ( 'S' , 'T' , 'V' , 'X' , 'Y' , 'Z' )  or
left(dx3,1) in ( 'S' , 'T' , 'V' , 'X' , 'Y' , 'Z' )  or
left(dx4,1) in ( 'S' , 'T' , 'V' , 'X' , 'Y' , 'Z' )
limit 100

ถ้าจำไม่ผิดรหัส  V W X Y  มันไม่ได้เป็น PDX นะครับ  ดังนั้นต้องเช็ค Diag ร่วมอันอื่นด้วยครับ
ใช้ฟังก์ชัน Left  เพื่อดึงตัวอักษรด้านซ้ายมา 1 ตัว  แล้วค่อยไปเช็คว่ามันใช่ v w x y s t หรือเปล่า
ถ้าตอน query จริง ๆ ก็เปลี่ยนจาก limit 100 เป็นเงื่อนไขอื่น  ถ้าไม่ limit เด๋วรอนานครับ  อิอิ
I'm nuke (นุ๊ก)
My Blog  : http://www.codenuke.net
อดีต นวก.คอมฯ รพช.พรหมพิราม => 1 พ.ค. 52 - 30 ก.ย. 54
ปัจจุบัน : Software Engineer บริษัทแห่งหนึ่ง

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

  • Hero Member
  • *****
  • กระทู้: 12,611
  • Respect: +169
    • ดูรายละเอียด
    • โรงพยาบาลปากท่อ
Re: สอบถามเรื่อง SQL
« ตอบกลับ #3 เมื่อ: กันยายน 13, 2011, 12:55:00 PM »
0
W,V,Y   =  EXTERNAL  CAUSE
Implement  HOSxP  Start 2548 ---> NOW!
Station : 130 Client   V.3 Version  3.67.1.XX
Server  : CENTOS  +MySQL maria 10.x.x

ออฟไลน์ Knott

  • Hero Member
  • *****
  • กระทู้: 883
  • Respect: +1
    • ดูรายละเอียด
Re: สอบถามเรื่อง SQL
« ตอบกลับ #4 เมื่อ: กันยายน 13, 2011, 13:39:15 PM »
0
select * from vn_stat where
left(pdx,1) in ( 'S' , 'T' , 'V' , 'X' , 'Y' , 'Z' )  or
left(dx0,1) in ( 'S' , 'T' , 'V' , 'X' , 'Y' , 'Z' )  or
left(dx1,1) in ( 'S' , 'T' , 'V' , 'X' , 'Y' , 'Z' )  or
left(dx2,1) in ( 'S' , 'T' , 'V' , 'X' , 'Y' , 'Z' )  or
left(dx3,1) in ( 'S' , 'T' , 'V' , 'X' , 'Y' , 'Z' )  or
left(dx4,1) in ( 'S' , 'T' , 'V' , 'X' , 'Y' , 'Z' )
limit 100

ถ้าจำไม่ผิดรหัส  V W X Y  มันไม่ได้เป็น PDX นะครับ  ดังนั้นต้องเช็ค Diag ร่วมอันอื่นด้วยครับ
ใช้ฟังก์ชัน Left  เพื่อดึงตัวอักษรด้านซ้ายมา 1 ตัว  แล้วค่อยไปเช็คว่ามันใช่ v w x y s t หรือเปล่า
ถ้าตอน query จริง ๆ ก็เปลี่ยนจาก limit 100 เป็นเงื่อนไขอื่น  ถ้าไม่ limit เด๋วรอนานครับ  อิอิ

ขอบคุณครับ   ;D ;D

ยังวนเวียนอยู่แถวนี้ไม่ไปไหนเลยนะท่านนุ๊ก 
รพช.วัดโบสถ์ จ.พิษณุโลก
ขึ้นระบบ 1 เมษายน 2551 (ขึ้นระบบเอง)
Server : IBM x3250 M2, RAM 4 GB, FreeBSD 7.2, Mysql 5.1.30
HOSxP Version 3.56.1.15

ออฟไลน์ autobotz

  • Jr. Member
  • **
  • กระทู้: 85
  • Respect: 0
    • ดูรายละเอียด
Re: สอบถามเรื่อง SQL
« ตอบกลับ #5 เมื่อ: กันยายน 13, 2011, 13:50:30 PM »
0
ขอบคุณทุก ๆ ท่านที่ช่วยแนะนำครับ  ;D
นายทัศนัย  อ้ายพุก
เจ้าหน้าที่คอมพิวเตอร์ชั้น 4
โรงพยาบาลค่ายพิชัยดาบหัก

40 Client
Main Server : HP
CPU : Intel Xeon X3450 2.67GHz 8 cores 64 bit
RAM : 16 Gb
OS : CentOs 6.5
DB : MySQL Percona 5.5.33-31.1

Secondary Server HP
CPU : Intel Xeon X3450 2.67GHz 8 cores 64 bit
RAM : 4 Gb
OS : CentOs 6.5
DB : MySQL Percona 5.5.33-31.1


Client version 3.56.11.19
Structure  3.56.11.19

ออฟไลน์ Svl2Nuk3

  • Hero Member
  • *****
  • กระทู้: 793
  • Respect: 0
    • ดูรายละเอียด
Re: สอบถามเรื่อง SQL
« ตอบกลับ #6 เมื่อ: กันยายน 13, 2011, 15:02:27 PM »
0
select * from vn_stat where
left(pdx,1) in ( 'S' , 'T' , 'V' , 'X' , 'Y' , 'Z' )  or
left(dx0,1) in ( 'S' , 'T' , 'V' , 'X' , 'Y' , 'Z' )  or
left(dx1,1) in ( 'S' , 'T' , 'V' , 'X' , 'Y' , 'Z' )  or
left(dx2,1) in ( 'S' , 'T' , 'V' , 'X' , 'Y' , 'Z' )  or
left(dx3,1) in ( 'S' , 'T' , 'V' , 'X' , 'Y' , 'Z' )  or
left(dx4,1) in ( 'S' , 'T' , 'V' , 'X' , 'Y' , 'Z' )
limit 100

ถ้าจำไม่ผิดรหัส  V W X Y  มันไม่ได้เป็น PDX นะครับ  ดังนั้นต้องเช็ค Diag ร่วมอันอื่นด้วยครับ
ใช้ฟังก์ชัน Left  เพื่อดึงตัวอักษรด้านซ้ายมา 1 ตัว  แล้วค่อยไปเช็คว่ามันใช่ v w x y s t หรือเปล่า
ถ้าตอน query จริง ๆ ก็เปลี่ยนจาก limit 100 เป็นเงื่อนไขอื่น  ถ้าไม่ limit เด๋วรอนานครับ  อิอิ

ขอบคุณครับ   ;D ;D

ยังวนเวียนอยู่แถวนี้ไม่ไปไหนเลยนะท่านนุ๊ก 

จะให้ไปไหนหล่ะพี่นอท   ไป รพ.วัดโบสถ์ออกจะบ่อย  555
I'm nuke (นุ๊ก)
My Blog  : http://www.codenuke.net
อดีต นวก.คอมฯ รพช.พรหมพิราม => 1 พ.ค. 52 - 30 ก.ย. 54
ปัจจุบัน : Software Engineer บริษัทแห่งหนึ่ง