สมมุตมีข้อมูลในตารางคือ 16,16,14,14,14,14,5,4,1
query ข้อมูลที่มากที่สุด
อันดับ1 คือ 16,16
อันดับ2 คือ 14,14,14,14
ให้มันแสดงข้อมูลออกมาทั้งหมดทั้งอันดับ 1 และ 2 จะquery ยังไงคับ
select ค่าที่มากสุดอันดับ1 และอันดับ2
Moderator: mindphp
- aei_ou
- PHP Full Member
- โพสต์: 39
- ลงทะเบียนเมื่อ: 22/01/2009 2:53 pm
- mindphp
- ผู้ดูแลระบบ MindPHP
- โพสต์: 41380
- ลงทะเบียนเมื่อ: 22/09/2008 6:18 pm
- ติดต่อ:
Re: select ค่าที่มากสุดอันดับ1 และอันดับ2
ใช้ GROUP BY จะได้ อันดับ มา
ใช้ ORDER BY จะได้ ข้อมูลที่เรียงตามลำดับออกมา
ใช้ ORDER BY จะได้ ข้อมูลที่เรียงตามลำดับออกมา
ติดตาม VDO: http://www.youtube.com/c/MindphpVideoman
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: https://www.mindphp.com/forums/viewforum.php?f=29
รับอบรม และพัฒนาระบบ: https://www.mindphp.com/forums/viewtopic.php?f=6&t=2042
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: https://www.mindphp.com/forums/viewforum.php?f=29
รับอบรม และพัฒนาระบบ: https://www.mindphp.com/forums/viewtopic.php?f=6&t=2042
- aei_ou
- PHP Full Member
- โพสต์: 39
- ลงทะเบียนเมื่อ: 22/01/2009 2:53 pm
Re: select ค่าที่มากสุดอันดับ1 และอันดับ2
คือผมจะ query อันแรกเอาค่าที่มากที่สุดออกมาแสดง จะได้ 16,16 เท่านั้น
แล้วก็สั่ง query อีกอัน เอาค่าที่มากที่สุดอันดับ 2 มา จะได้เฉพาะ 14,14,14,14
ถ้า group by มาแล้ว แล้ว order by desc เอาค่าสูง
สุดขึ้นก่อน แล้ว Limit 1 มันก็ได้ แต่ค่าที่สูงสุดอันดับ 1 มันมีมากกว่า1ค่า พอlimit 1 มันจะได้ค่าเดียว
แล้วข้อมูลในฐานข้อมูลจิงๆ เราจะไม่รู้เลยว่ามีอะไรมั่ง เพราะ ต้องselectตามเงื่อนไข where เราจะไม่รู้เลยว่าอันดับที่1 สูงสุดมีกี่ค่า อันดับ2มีกี่ค่า มันเลยใช้ limit ไม่ได้
มึนเลย
แล้วก็สั่ง query อีกอัน เอาค่าที่มากที่สุดอันดับ 2 มา จะได้เฉพาะ 14,14,14,14
ถ้า group by มาแล้ว แล้ว order by desc เอาค่าสูง
สุดขึ้นก่อน แล้ว Limit 1 มันก็ได้ แต่ค่าที่สูงสุดอันดับ 1 มันมีมากกว่า1ค่า พอlimit 1 มันจะได้ค่าเดียว
แล้วข้อมูลในฐานข้อมูลจิงๆ เราจะไม่รู้เลยว่ามีอะไรมั่ง เพราะ ต้องselectตามเงื่อนไข where เราจะไม่รู้เลยว่าอันดับที่1 สูงสุดมีกี่ค่า อันดับ2มีกี่ค่า มันเลยใช้ limit ไม่ได้
มึนเลย
- mindphp
- ผู้ดูแลระบบ MindPHP
- โพสต์: 41380
- ลงทะเบียนเมื่อ: 22/09/2008 6:18 pm
- ติดต่อ:
Re: select ค่าที่มากสุดอันดับ1 และอันดับ2
ต้อง Query มาสองครั้ง group และเรียงมันจะได้ค่า สูงสุด 1,2,3,...mindphp เขียน:ใช้ GROUP BY จะได้ อันดับ มา
ใช้ ORDER BY จะได้ ข้อมูลที่เรียงตามลำดับออกมา
เช่น มากสุด 1=16 ,2=14
ก็เอา 16 ,14 เป็นเงือนไขในการ query อีกครั้ง
ติดตาม VDO: http://www.youtube.com/c/MindphpVideoman
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: https://www.mindphp.com/forums/viewforum.php?f=29
รับอบรม และพัฒนาระบบ: https://www.mindphp.com/forums/viewtopic.php?f=6&t=2042
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: https://www.mindphp.com/forums/viewforum.php?f=29
รับอบรม และพัฒนาระบบ: https://www.mindphp.com/forums/viewtopic.php?f=6&t=2042
- aei_ou
- PHP Full Member
- โพสต์: 39
- ลงทะเบียนเมื่อ: 22/01/2009 2:53 pm
Re: select ค่าที่มากสุดอันดับ1 และอันดับ2
ขอบคุณมากครับ ทำได้แล้ว
ผมใช้วิธี temp table เข้าช่วยครับ
ผมใช้วิธี temp table เข้าช่วยครับ
-
- Similar Topics
- ตอบกลับ
- แสดง
- โพสต์ล่าสุด
-
-
โพสต์ใหม่ select count(*) from tba กับ select count(pk_column) from tba
โดย jataz2 » 06/01/2016 9:44 am » ใน SQL - Database - 0 ตอบกลับ
- 4487 แสดง
-
โพสต์ล่าสุด โดย jataz2
06/01/2016 9:44 am
-
-
- 1 ตอบกลับ
- 3411 แสดง
-
โพสต์ล่าสุด โดย mindphp
08/05/2017 2:35 am
-
- 0 ตอบกลับ
- 2179 แสดง
-
โพสต์ล่าสุด โดย thatsawan
11/03/2016 12:39 am
-
- 5 ตอบกลับ
- 5587 แสดง
-
โพสต์ล่าสุด โดย AePongsak
20/04/2018 5:05 pm
-
-
โพสต์ใหม่ select เลือกที่เป็นหัวข้อได้ ต้องทำอย่างไรคะ
โดย gainkullan » 15/03/2017 3:31 pm » ใน Programming - PHP - 0 ตอบกลับ
- 864 แสดง
-
โพสต์ล่าสุด โดย gainkullan
15/03/2017 3:31 pm
-
-
- 4 ตอบกลับ
- 5655 แสดง
-
โพสต์ล่าสุด โดย mindphp
05/10/2014 10:22 pm
-
- 1 ตอบกลับ
- 2358 แสดง
-
โพสต์ล่าสุด โดย jataz2
19/08/2015 11:26 am
ผู้ใช้งานขณะนี้
สมาชิกกำลังดูบอร์ดนี้: ไม่มีสมาชิกใหม่ และบุคลทั่วไป 91