วิธีนี้ใช้ Union Query นะครับ โดยจับกลุ่ม Jobno ตาม Truck No 1 - 10 ที่มี โดยถ้าเป็นช่องว่างๆ ไม่มีข้อมูลก็จะไม่นำมาแสดง
ตัวอย่างโค้ด
select Jobno,[truck no 1] as TruckNo from tbltruck_imp WHERE [truck no 1] IS NOT NULL
Union
Select Jobno,[truck no 2] from tbltruck_imp WHERE [truck no 2] IS NOT NULL
Union
Select Jobno,[truck no 3] from tbltruck_imp WHERE [truck no 3] IS NOT NULL
Union
Select Jobno,[truck no N] from tbltruck_imp WHERE [truck no [N] IS NOT NULL;
์N คือ Field TruckNo
N ที่มี ต่อลงมาเรื่อยๆ
เราจะได้ผลลัพธ์ ตามคิวรี่ชื่อ
UnionTruck_ImpTruckNo นี้ใช้ใน JobNo อะไรบ้าง?
ที่ตัวรายงาน เราใช้การจัดกลุ่ม และใช้ TruckNo เป็น HeadGroup
และนำ Jobno มาวางไว้ในส่วน Detail เพื่อแสดง JobNo ตาม TruckNo ครับ
Truck นี้ใช้งานกี่งาน??
เมื่อได้คิวรี่ Union แล้วก็ใช้การ Count เพื่อนับจำนวนของ JobNo โดยลำดับตาม TruckNo ที่มี
SELECT UnionTruck_Imp.TruckNo, Count(UnionTruck_Imp.Jobno) AS จำนวนงาน
FROM UnionTruck_Imp
GROUP BY UnionTruck_Imp.TruckNo;
ลองดูการแสดงผลจากตัวอย่างนะครับ ถ้าต้องการแสดงแบบไหนอีกจะทำตัวอย่างให้ดูเน้อ