Select ข้อมูลจากฐานข้อมูล แสดงในรูปแบบตาราง ให้ข้อมูลอยู่บรรทัดเดียวกัน
ถาม-ตอบ แนะนำไอเดียว โค้ดตัวอย่าง แนวทาง วิธีแก้ปัญหา Select ข้อมูลจากฐานข้อมูล แสดงในรูปแบบตาราง ให้ข้อมูลอยู่บรรทัดเดียวกัน
Select ข้อมูลจากฐานข้อมูล แสดงในรูปแบบตาราง ให้ข้อมูลอยู่บรรทัดเดียวกัน
ขอสอบถามหน่อยนะคะ พอดีต้องการ Select ข้อมูลซึ่งอยู่ตารางเดียว แล้วให้แยกระหว่างอะไหล่กับค่าแรง
แต่ติดปัญหาตรงที่ไม่รู้จะแสดงให้อยู่บรรทัดเดียวกันยังไงคะ ช่วยทีคะ
ข้อมูลที่เก็บไว้ในฐานข้อมูล แต่ต้องการให้แสดงผลโดยแยกจาก Type (0=อะไหล่ 1=ค่าแรง)

แสดงแยกกันแบบนี้คะ


ข้อมูลที่เก็บไว้ในฐานข้อมูล แต่ต้องการให้แสดงผลโดยแยกจาก Type (0=อะไหล่ 1=ค่าแรง)
แสดงแยกกันแบบนี้คะ

คำแนะนำ และการใช้งาน
สมาชิก กรุณา ล็อกอินเข้าระบบ เพื่อตั้งคำถามใหม่ หรือ ตอบคำถาม สมาชิกใหม่ สมัครสมาชิกได้ที่ สมัครสมาชิก
- ถาม-ตอบ กรุณา ล็อกอินเข้าระบบ
ความคิดเห็นที่
1
ลอง select ซ้อนหรือที่เรียกว่า subquery ตามลิ้งค์นี้ดู
https://stackoverflow.com/questions/44065773/mysql-merging-multiple-rows-with-the-same-id-into-one-row

ความคิดเห็นที่
2
ทำแล้วค่ะ แต่ไม่ได้ มันเป็นแบบนี้
คืออยากให้มันอยู่บรรทัดเดียวกันอ่ะคะต้องทำไง
คืออยากให้มันอยู่บรรทัดเดียวกันอ่ะคะต้องทำไง

ความคิดเห็นที่
3
ถ้าใช้ตัวสินค้าเป็นตัวหลัก ในการวนลูปแสดง แล้วใช้ type เป็นตัวเงื่อนไขการแบ่งรายการ ให้ GROUP ด้วย id ตัวสินค้า
พอ GROUP แล้ว สินค้านั้น ก็จะมี type ได้ท้ง 3 รูปแบบ 0 , 1 อย่างใดอย่างหนึ่ง และ 0 กับ 1
ลองตัวอย่างคำสั่ง sql นี้เป็นแนวทาง
type ( Yype) รายซ่อม หรือ รายการเปลี่ยนอะไหล่
pro_id ( Itemcode )
พอ GROUP แล้ว สินค้านั้น ก็จะมี type ได้ท้ง 3 รูปแบบ 0 , 1 อย่างใดอย่างหนึ่ง และ 0 กับ 1
ลองตัวอย่างคำสั่ง sql นี้เป็นแนวทาง
1 2 3 4 | SELECT IF(pro_type=0,pro_id, '' ) as type1, IF(pro_type=1,pro_id, '' ) as type2 FROM tbl1 GROUP BY pro_id |
type ( Yype) รายซ่อม หรือ รายการเปลี่ยนอะไหล่
pro_id ( Itemcode )

ความคิดเห็นที่
4
ลองนำโค้ดไปปรับใช้แล้วคะ เวลาวนลูปแสดงรายการก็ยังเป็นแบบเดิม คืออยากให้มันอยู่บรรทัดเดียวกัน
อันนี้โค้ด SQL ที่ใช้คะ
select a.Itemcode
select a.Itemcode
,(select Item_name from items As b where b.Type=0 and b.Itemcode=a.Itemcode) as type1
,(select Item_name from items As b where b.Type=1 and b.Itemcode=a.Itemcode) as type2
from quotation_sub As a WHERE a.Quotation_no = 'QT1802-0001'
ผลลัพธ์
![]()
ที่จริงอยากได้ผลลัพธ์แบบนี้ พอจะมีแนวทางทำได้ไหมคะ



![]()
ผลลัพธ์
ที่จริงอยากได้ผลลัพธ์แบบนี้ พอจะมีแนวทางทำได้ไหมคะ




ขอบคุณทุกการสนับสนุน
![]()