 |
PHP+SQL ติดปัญหา เรื่อง Group By Clause (จะนำไปแสดงผลใน Excel ให้ได้ตามความต้องการของ User) |
|
 |
|
|
 |
 |
|
เรียนทุกท่านครับ
รบกวนสอบถามเรื่องคำสั่ง SQL ในส่วนของ Group by ในความต้องการของ user อยาก แยกออกเป็นดังนี้

ส่วนของ SQL DB จัดเก็บ Date เป็น format ของ Unix ซึ่ง เวลาต้องการใช้ในการ Query ต้องแปลงออกมาเป็น datetime ปกติก่อน มีคำสั่งตามรูปข้างล่างครับ
Code (SQL)
SELECT count(dm_model) AS total,dm_model,DATEPART(dd,dbo.F_UNIX_TIME_TO_DATETIME(dev_log_datetime)) AS InsertDay,
DATEPART(mm,dbo.F_UNIX_TIME_TO_DATETIME(dev_log_datetime)) AS InsertMonth,
DATEPART(yyyy,dbo.F_UNIX_TIME_TO_DATETIME(dev_log_datetime)) AS InsertYear
FROM dev_log LEFT OUTER JOIN devices ON dev_log.device_id=devices.device_id
LEFT OUTER JOIN lots ON devices.lot_id=lots.lot_id
LEFT OUTER JOIN device_model ON lots.dm_id=device_model.dm_id
WHERE (dev_log_datetime BETWEEN 1466787600 AND 1467133199)
GROUP BY dm_model,DATEPART(dd,dbo.F_UNIX_TIME_TO_DATETIME(dev_log_datetime)),
DATEPART(mm,dbo.F_UNIX_TIME_TO_DATETIME(dev_log_datetime)),
DATEPART(yyyy,dbo.F_UNIX_TIME_TO_DATETIME(dev_log_datetime))
ORDER BY DATEPART(dd,dbo.F_UNIX_TIME_TO_DATETIME(dev_log_datetime)),
DATEPART(mm,dbo.F_UNIX_TIME_TO_DATETIME(dev_log_datetime)),
DATEPART(yyyy,dbo.F_UNIX_TIME_TO_DATETIME(dev_log_datetime))
แล้วได้ผลลัพธ์แบบนี้

อยากขอความช่วยเหลือจากท่าน ว่า จะเขียน PHP แบบไหนให้รวมวันที่เดียวกัน และ แยก product ให้ได้ตาม Excel ที่ user ต้องการได้บ้างครับ
ผมพยายามค้นหากะทู้เก่าๆ แล้ว ยังไม่ตรงตามความต้องการที่อยากได้ครับ
ขอบพระคุณล่วงหน้าครับ
Tag : PHP, Ms SQL Server 2005, Ms SQL Server 2008, Ms SQL Server 2012, Excel (Excel.Application)
|
|
 |
 |
 |
 |
Date :
2016-06-28 14:25:51 |
By :
peejangka |
View :
849 |
Reply :
1 |
|
 |
 |
 |
 |
|
|
|
 |
 |
|
 |
 |
|