|
|
|
อยากทำการ mysql query ผลรวมก่อนแล้วจึงแบ่งประเภทของผลรวมครับ |
|
|
|
|
|
|
|
รบกวนสอบถามการ Query หน่อยครับ ผมอยากหาผลรวมการรับสายโทรศัพท์ของแต่ละกรมก่อนครับ
แล้วจึงค่อยแยกตามประเภทการรับสายครับ
โครงสร้างฐานข้อมูลครับ
ผมลอง Query คิดว่าน่าจะมีปัญหาตรง GROUP BY
Code (SQL)
$fetch_users = mysqli_query($connect, "
SELECT id, type, company, COUNT(*) AS countcompany, COUNT(type) AS counttype
FROM users
GROUP BY company, type") or die(mysqli_error($connect));
while ($row = mysqli_fetch_assoc($fetch_users)) {
$row_array[$row['company']]['ทั้งหมด'] = $row['countcompany'];
$row_array[$row['company']]['ประเภท'][] = array(
$row['type'] => $row['counttype'],
);
}
$json_data = array('Operator_OSEC' => $row_array);
$json = json_encode($json_data);
//file_put_contents('demo.json', $json);
echo $json;
mysqli_close($connect);
exit;
โดยอยากให้ผลลัพธ์ออกมาเป็น JSON แบบนี้ครับ
Code (PHP)
{
Operator_OSEC: {
กรมการค้าต่างประเทศ: {
ทั้งหมด: "38",
ประเภท: [
{
ขอรับคำปรึกษา: "32"
},
{
สอบถามเรื่องทั่วไป: "6"
}
]
},
Tag : PHP, MySQL
|
ประวัติการแก้ไข 2018-10-05 01:56:14
|
|
|
|
|
Date :
2018-10-05 01:54:56 |
By :
pramuan_thaicreate |
View :
1022 |
Reply :
6 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ต้อง Query ในลูป while อีกครั้ง
Code (SQL)
SELECT
type,
COUNT( type ) AS counttype AS counttype
FROM
users
WHERE
id = { $company_id } -- << Where Company ID
GROUP BY
type
ส่วน JSON ก็สร้าง array มารับค่าใหม่ตอน Loop
|
|
|
|
|
Date :
2018-10-05 09:11:04 |
By :
Krungsri |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ผมขอความรู้หน่อยครับ พอดีผมเป็น IT Support เพิ่งเริ่มเขียนโค้ด
ในสายงาน Programmer ปกติเวลาเราสร้าง webservice หรือ json อะไรสักอย่าง เพื่อให้คนอื่นเอาไปใช้งาน
เราควรให้ข้อมูลที่เป็น RAW ให้เค้าไปแล้วให้เค้าไปจัดการเอง
หรือว่าเราเป็นคนจัดการข้อมูลเหล่านี้เองเช่น Count หรือ GROUP ไปให้เค้าเลยครับ
หรือขึ้นอยู่กับการพูดคุยกันว่าแบบไหนสะดวก
|
|
|
|
|
Date :
2018-10-05 09:19:51 |
By :
pramuan_thaicreate |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
มันแล้วแต่จะคุยกันนะครับผมว่า ขึ้นอยู่กับสถานะการณ์
บางอย่างควรจะใช้ raw บางอย่าง ควรจะ คำนวนกลับไป แต่ทั้งนี้ทั้งนั้น สำคัญจริงๆคือรูปแบบของ ข้อมูลหรือ ฟอแมตมันอะครับผมว่า
เช่นวันที่ ส่งฟอแมต Y-m-d ก็ส่ง ฟอแมตนี้ให้หมด เพราะว่าคนเอาไปใช้ต่ออย่าง app เขาจะได้ทำ class ใว้แปลงแค่ฟอแมตเดียว เคยเจอหลายฟอแมตที่ปวดตับเลย
|
|
|
|
|
Date :
2018-10-05 09:27:20 |
By :
DK |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ใช่ครับขึ้นอยู่กับสถานะการณ์ ลองศึกษา RESTful API ดูครับ
|
|
|
|
|
Date :
2018-10-05 09:31:41 |
By :
Krungsri |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ผมว่า Query แล้วให้ออกมาเป็นผลรวม แล้วกระจายออกเป็น รายละเอียดย่อย จะเป็นคำสั่งที่เขียนยากนะครับ
ควรแยก 2 Query
Query 1 : หาผลรวมของแต่ละกรม
while(){
Query 2 : หารายละเอียด (แยกประเภท)
}
|
|
|
|
|
Date :
2018-10-05 10:16:43 |
By :
Jatmentz |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ขอบคุณ Krungsri, DK, Tuii มากครับ
|
|
|
|
|
Date :
2018-10-05 16:59:07 |
By :
pramuan_thaicreate |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 04
|