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

Registered : 109,027

HOME > PHP > PHP Forum > ต้องการแสดงข้อมูลรายชื่อนักเรียนที่มาสายมากที่สุด เก็บข้อมูลไว้ดังนี้ตารางที่ 1id ****** ชื่อนักเรียน



 

ต้องการแสดงข้อมูลรายชื่อนักเรียนที่มาสายมากที่สุด เก็บข้อมูลไว้ดังนี้ตารางที่ 1id ****** ชื่อนักเรียน

 



Topic : 023317

Guest




เก็บข้อมูลไว้ดังนี้

ตารางที่ 1

id ****** ชื่อนักเรียน
1 ****** นายสมชาย
2 ****** น.ส.สมถวิล
3 ****** นายสมปอง
4 ****** นายสมศักดิ์
5 ****** น.ส.สมใจ

ตารางที่ 2
โดยเก็บชื่อนักเรียนเป็น id เนื่องจากชื่อบางนอาจมีซ้ำกัน

วันที่ ***** id นักเรียนที่มาสาย

12-12 ***** 1
12-12 ***** 3
15-12 ***** 1
20-12 ***** 5
22-12 ***** 2
25-12 ***** 1
26-12 ***** 4
26-12 ***** 3

ดังตาราง 2 ตารางผมต้องการให้แสดงรายชื่อนักเรียนที่มาสายมากที่สุดขึ้นก่อน
ออกมาเป็น
นายสมชาย
นายสมปอง
.
.
.

จะใช้ sql แบบไหนดีครับรบกวนชี้แนะด้วยครับ
ขอบคุณครับ


Tag : - - - -







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 7 ธ.ค. 2551 12:54:58 By : มาสาย View : 1487 Reply : 6
 

 

No. 1

Guest


ผมลองค้นหาในบอร์ดนี้ดูจากกระทู้

https://www.thaicreate.com/php/forum/020126.html

ผมลองแก้ไขแล้วนำมาประยุกต์ตามดูผลลัพที่ได้มัน error

$num_sql = "select name,count(name) from late group by name order by count(name) desc";
$num_result = mysql_query($num_sql);
while($nurow = mysql_fetch_array($num_result)) <<----- error
{
echo "$nurow[0]; $nurow[1]";
echo "<br>";
}
----------------------------------------
แต่ถ้าผมตัดเหลือแค่

$num_sql = "select name,count(name) from late group by name";
$num_result = mysql_query($num_sql);
while($nurow = mysql_fetch_array($num_result))
{
echo "$nurow[0]; $nurow[1]";
echo "<br>";
}

สามารถรันได้โดยจะได้
นายสมชาย 3
น.ส.สมถวิล 1
นายสมปอง 2
นายสมศักดิ์ 1
น.ส.สมใจ 1

ผมต้องการให้มันรันจำจากมากไปหาน้อย ต้องแก้ไขยังไงครับ
ขอบคุณครับ






Date : 7 ธ.ค. 2551 23:17:34 By : น.ร.มาสาย
 


 

No. 2



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

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

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

ออกแบบฐานข้อมูลแบบนี้ใช้ยากคับ
ผมว่าตารางที่สองควรแยก เป็นสองฟีล ที่มี ไพรมารี่ สอง ฟีลแรกดีกว่านะครับ

ดังนั้นตารางที่สองควรมีฟีล ประมาณนี้

id, student_id, late_date_time
สมมติชื่อตารางเป็น table

SELECT student_id, COUNT(*) as late_count FROM table GROUP BY student_id ORDER BY student_id DESC

ก็จะได้ id ทั้งหมดของนักเรียนมาครับ

จะใช้ LEFT_JOIN ช่วยด้วยก็ได้นะครับถ้าต้องการชื่อ นักเรียนเลย


SITE: http://gunner.freetzi.com
MSN: [email protected]
TEL: 087-577-0276
Date : 7 ธ.ค. 2551 23:38:00 By : เอี่ยว
 

 

No. 3



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

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

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

แก้หน่อยคับ

SELECT student_id, COUNT(*) as late_count FROM table GROUP BY student_id ORDER BY late_count DESC
Date : 7 ธ.ค. 2551 23:39:18 By : เอี่ยว
 


 

No. 4

Guest


select ตารางที่1.id, ตารางที่1.ชื่อนักเรียน,count(ตารางที่2.id) as num from ตารางที่1,ตารางที่2
where ตารางที่1.id=ตารางที่2.id
group by (ตารางที่2.id )
Date : 8 ธ.ค. 2551 10:30:58 By : jewels
 


 

No. 5

Guest


ขอบคุณคุณเอี่ยวกับคุณ jewels มากนะครับ

ผมทำตามที่คุณเอี่ยวแนะนำ นั้นได้ผลแล้วครับ

ขอบคุณอีกครั้งครับ
Date : 8 ธ.ค. 2551 11:08:47 By : มาสาย
 


 

No. 6



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

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

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

ขอบคุณที่มาตอบกลับครับ

ถือเป็นมารยาทที่ขาดหายไปสำหรับบางคน ที่ทำให้ไม่อยากตอบกระทู้นะครับ
Date : 8 ธ.ค. 2551 11:43:59 By : เอี่ยว
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : ต้องการแสดงข้อมูลรายชื่อนักเรียนที่มาสายมากที่สุด เก็บข้อมูลไว้ดังนี้ตารางที่ 1id ****** ชื่อนักเรียน
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ 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: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

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