ผู้เขียน หัวข้อ: concat และวิธีใช้  (อ่าน 6601 ครั้ง)

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

ออฟไลน์ krathokman

  • Sr. Member
  • ****
  • กระทู้: 265
  • Respect: +1
    • ดูรายละเอียด
concat และวิธีใช้
« เมื่อ: มกราคม 11, 2012, 16:05:56 PM »
0
concat นี่ใช้ต่อ Field กับ Field ใช่ไหมครับ  ถ้า Field A และ Field B ไม่เป็น Null ผลคือ
FieldAFieldB  แต่ถ้าตัวใดตัวหนึ่งเป็น Null  ผลคือ Null  ไม่ทราบว่าผมเข้าใจถูกต้องหรือไม่คำถามคือ  ผมไม่ทราบว่า  FieldB จะเป็น Null หรือไม่  ไม่รู้ว่า User จะกรอกหรือไม่
ผมควรใช้อะไร  หรือควรทำอย่างไร
อรรถเดช รพ.จัตุรัส ชัยภูมิ
Amoxydate@hotmail.com
ขึ้นระบบ 10/9/54  โดย BMS Version 3.55.2.19

dusit

  • บุคคลทั่วไป
Re: concat และวิธีใช้
« ตอบกลับ #1 เมื่อ: มกราคม 11, 2012, 16:19:34 PM »
0
concat นี่ใช้ต่อ Field กับ Field ใช่ไหมครับ  ถ้า Field A และ Field B ไม่เป็น Null ผลคือ
FieldAFieldB  แต่ถ้าตัวใดตัวหนึ่งเป็น Null  ผลคือ Null  ไม่ทราบว่าผมเข้าใจถูกต้องหรือไม่คำถามคือ  ผมไม่ทราบว่า  FieldB จะเป็น Null หรือไม่  ไม่รู้ว่า User จะกรอกหรือไม่
ผมควรใช้อะไร  หรือควรทำอย่างไร
ลองดูแบบนี้ว่าได้ไหมครับ
concat(FieldA,IF(FieldB is null,'ว่าง','ไม่ว่าง'))

ออฟไลน์ Svl2Nuk3

  • Hero Member
  • *****
  • กระทู้: 793
  • Respect: 0
    • ดูรายละเอียด
Re: concat และวิธีใช้
« ตอบกลับ #2 เมื่อ: มกราคม 11, 2012, 20:07:13 PM »
0
เข้าใจถูกแล้วครับ 
string ที่เป็นค่าว่าง  กับค่า NULL  คือคนละค่ากัน
ค่าต่าง ๆ   ที่มา concat  กัน  เมื่อมีค่าใดค่าหนึ่งเป็น NULL  ผลจะออกมาเป็น NULL ครับ

แต่ใน SQL Query (สายฟ้า) ของ hosxp  เราจะเห็นว่าค่าว่าง  ( "" )  กับ  NULL  จะแสดงผลเหมือนกันทำให้เราแยกไม่ออก
แต่ถ้าใช้ MySQL Query Broswer  ค่า null  จะแสดงคำว่า null แทนช่องว่าง ๆ

เวลาเขียน  sql  ก็พยายามดักค่าที่เราไม่ต้องการด้วยครับ  เช่น  where field is not null and field <> ""
I'm nuke (นุ๊ก)
My Blog  : http://www.codenuke.net
อดีต นวก.คอมฯ รพช.พรหมพิราม => 1 พ.ค. 52 - 30 ก.ย. 54
ปัจจุบัน : Software Engineer บริษัทแห่งหนึ่ง

ออฟไลน์ Knott

  • Hero Member
  • *****
  • กระทู้: 889
  • Respect: +1
    • ดูรายละเอียด
Re: concat และวิธีใช้
« ตอบกลับ #3 เมื่อ: มกราคม 12, 2012, 11:40:35 AM »
0
แหม่ะ ยังแวะเวียนบอร์ด HOSxP บ่อยๆ นะท่านนุ๊ก  ;D ;D
รพช.วัดโบสถ์ จ.พิษณุโลก
ขึ้นระบบ 1 เมษายน 2551 (ขึ้นระบบเอง)
Server : IBM x3250 M2, RAM 4 GB, FreeBSD 7.2, Mysql 5.1.30
HOSxP Version 3.56.1.15

ออฟไลน์ Svl2Nuk3

  • Hero Member
  • *****
  • กระทู้: 793
  • Respect: 0
    • ดูรายละเอียด
Re: concat และวิธีใช้
« ตอบกลับ #4 เมื่อ: มกราคม 12, 2012, 16:49:16 PM »
0
แหม่ะ ยังแวะเวียนบอร์ด HOSxP บ่อยๆ นะท่านนุ๊ก  ;D ;D

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

ออฟไลน์ งูเขียว

  • Jr. Member
  • **
  • กระทู้: 53
  • Respect: 0
    • ดูรายละเอียด
Re: concat และวิธีใช้
« ตอบกลับ #5 เมื่อ: มกราคม 13, 2012, 09:57:47 AM »
0
ได้ความรู้เพิ่ม...ขอบคุณมากเพราะแต่ก่อนใช้อย่างเดียว..555
 

ออฟไลน์ ไม่เสียสละ ชัยชนะไม่เกิด

  • Hero Member
  • *****
  • กระทู้: 1,267
  • Project Maneger
  • Respect: +2
    • ดูรายละเอียด
Re: concat และวิธีใช้
« ตอบกลับ #6 เมื่อ: มกราคม 13, 2012, 12:31:10 PM »
0
แต่วิธีแก้สามารถใช้คำสั่งนี้ให้ได้ผลออกมาแสดงได้ครับอันนี้ยกตัวอย่างเท่านั้นต้องการประยุกต์ใช้ก็เปลี่ยนฟิวด์และตารางเอานะครับ

select concat(if(unitprice is null," ",unitprice),if(dosageform is null," ",dosageform)) as cc from drugitems

ไว้จะหาเวลาแวะไปนะครับพี่เดช
ทำไม่ได้ หรือไม่ได้ทำ
 Project Maneger
Bangkok Medical Software Co., Ltd.
2, 2nd Floor, Soi Suksawat 33,
Suksawat Road, Radburana 10140
Thailand