Select ข้อมูลจากฐานข้อมูล แสดงในรูปแบบตาราง ให้ข้อมูลอยู่บรรทัดเดียวกัน

ถาม-ตอบ แนะนำไอเดียว โค้ดตัวอย่าง แนวทาง วิธีแก้ปัญหา Select ข้อมูลจากฐานข้อมูล แสดงในรูปแบบตาราง ให้ข้อมูลอยู่บรรทัดเดียวกัน

Select ข้อมูลจากฐานข้อมูล แสดงในรูปแบบตาราง ให้ข้อมูลอยู่บรรทัดเดียวกัน
ขอสอบถามหน่อยนะคะ พอดีต้องการ Select ข้อมูลซึ่งอยู่ตารางเดียว แล้วให้แยกระหว่างอะไหล่กับค่าแรง
แต่ติดปัญหาตรงที่ไม่รู้จะแสดงให้อยู่บรรทัดเดียวกันยังไงคะ ช่วยทีคะ

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


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



Anyarut 49.231.10.xxx 15-02-2018 13:30:32

คำแนะนำ และการใช้งาน

สมาชิก กรุณา ล็อกอินเข้าระบบ เพื่อตั้งคำถามใหม่ หรือ ตอบคำถาม สมาชิกใหม่ สมัครสมาชิกได้ที่ สมัครสมาชิก


  • ถาม-ตอบ กรุณา ล็อกอินเข้าระบบ
  • เปลี่ยน


    ( หรือ เข้าใช้งานผ่าน Social Login )

 ความคิดเห็นที่ 1
ลอง select ซ้อนหรือที่เรียกว่า subquery ตามลิ้งค์นี้ดู
 
https://stackoverflow.com/questions/44065773/mysql-merging-multiple-rows-with-the-same-id-into-one-row


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


anyarut 49.231.10.xxx 17-02-2018 08:22
 ความคิดเห็นที่ 3
ถ้าใช้ตัวสินค้าเป็นตัวหลัก ในการวนลูปแสดง แล้วใช้ type เป็นตัวเงื่อนไขการแบ่งรายการ ให้ GROUP ด้วย id ตัวสินค้า
พอ GROUP แล้ว สินค้านั้น ก็จะมี type ได้ท้ง 3 รูปแบบ  0 , 1 อย่างใดอย่างหนึ่ง และ 0 กับ 1 
ลองตัวอย่างคำสั่ง sql นี้เป็นแนวทาง

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 )


ninenik 223.24.156.xxx 17-02-2018
 ความคิดเห็นที่ 4
ลองนำโค้ดไปปรับใช้แล้วคะ เวลาวนลูปแสดงรายการก็ยังเป็นแบบเดิม คืออยากให้มันอยู่บรรทัดเดียวกัน 

อันนี้โค้ด SQL ที่ใช้คะ

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'

ผลลัพธ์



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



 


anyarut 49.231.10.xxx 19-02-2018 10:19
1






เว็บไซต์ของเราให้บริการเนื้อหาบทความสำหรับนักพัฒนา โดยพึ่งพารายได้เล็กน้อยจากการแสดงโฆษณา โปรดสนับสนุนเว็บไซต์ของเราด้วยการปิดการใช้งานตัวปิดกั้นโฆษณา (Disable Ads Blocker) ขอบคุณครับ