Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 107,529

HOME > PHP > PHP Forum > อยากทำการ mysql query ผลรวมก่อนแล้วจึงแบ่งประเภทของผลรวมครับ





 

อยากทำการ mysql query ผลรวมก่อนแล้วจึงแบ่งประเภทของผลรวมครับ

 



Topic : 132234



โพสกระทู้ ( 38 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook



รบกวนสอบถามการ Query หน่อยครับ ผมอยากหาผลรวมการรับสายโทรศัพท์ของแต่ละกรมก่อนครับ
แล้วจึงค่อยแยกตามประเภทการรับสายครับ

โครงสร้างฐานข้อมูลครับ
DB2

ผมลอง 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
Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2018-10-05 01:54:56 By : pramuan_thaicreate View : 171 Reply : 6
 

 

No. 1



โพสกระทู้ ( 1,521 )
บทความ ( 2 )

สมาชิกที่ใส่เสื้อไทยครีเอท Hall of Fame 2012

สถานะออฟไลน์
Facebook

ต้อง 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
 


 

No. 2



โพสกระทู้ ( 38 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

ผมขอความรู้หน่อยครับ พอดีผมเป็น IT Support เพิ่งเริ่มเขียนโค้ด
ในสายงาน Programmer ปกติเวลาเราสร้าง webservice หรือ json อะไรสักอย่าง เพื่อให้คนอื่นเอาไปใช้งาน
เราควรให้ข้อมูลที่เป็น RAW ให้เค้าไปแล้วให้เค้าไปจัดการเอง
หรือว่าเราเป็นคนจัดการข้อมูลเหล่านี้เองเช่น Count หรือ GROUP ไปให้เค้าเลยครับ
หรือขึ้นอยู่กับการพูดคุยกันว่าแบบไหนสะดวก
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-10-05 09:19:51 By : pramuan_thaicreate
 

 

No. 3



โพสกระทู้ ( 198 )
บทความ ( 0 )



สถานะออฟไลน์


มันแล้วแต่จะคุยกันนะครับผมว่า ขึ้นอยู่กับสถานะการณ์
บางอย่างควรจะใช้ raw บางอย่าง ควรจะ คำนวนกลับไป แต่ทั้งนี้ทั้งนั้น สำคัญจริงๆคือรูปแบบของ ข้อมูลหรือ ฟอแมตมันอะครับผมว่า
เช่นวันที่ ส่งฟอแมต Y-m-d ก็ส่ง ฟอแมตนี้ให้หมด เพราะว่าคนเอาไปใช้ต่ออย่าง app เขาจะได้ทำ class ใว้แปลงแค่ฟอแมตเดียว เคยเจอหลายฟอแมตที่ปวดตับเลย
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-10-05 09:27:20 By : DK
 


 

No. 4



โพสกระทู้ ( 1,521 )
บทความ ( 2 )

สมาชิกที่ใส่เสื้อไทยครีเอท Hall of Fame 2012

สถานะออฟไลน์
Facebook

ใช่ครับขึ้นอยู่กับสถานะการณ์ ลองศึกษา RESTful API ดูครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-10-05 09:31:41 By : Krungsri
 


 

No. 5



โพสกระทู้ ( 157 )
บทความ ( 0 )



สถานะออฟไลน์


ผมว่า Query แล้วให้ออกมาเป็นผลรวม แล้วกระจายออกเป็น รายละเอียดย่อย จะเป็นคำสั่งที่เขียนยากนะครับ
ควรแยก 2 Query
Query 1 : หาผลรวมของแต่ละกรม
while(){
Query 2 : หารายละเอียด (แยกประเภท)
}
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-10-05 10:16:43 By : Jatmentz
 


 

No. 6



โพสกระทู้ ( 38 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

ขอบคุณ Krungsri, DK, Tuii มากครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-10-05 16:59:07 By : pramuan_thaicreate
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : อยากทำการ mysql query ผลรวมก่อนแล้วจึงแบ่งประเภทของผลรวมครับ
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: Voake, Comcube, รับทำเว็บไซต์ รับเขียนโปรแกรม

Load balance : Server 01
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2019 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 , 08-9968-0655 อัตราราคา คลิกที่นี่