ถามเรื่องการใช้ ORDER BY ....... DESC LIMIT

เกี่ยวกับ ปัญหาการใช้งาน การติดตั้ง ฐานข้อมูล MySql Oracle MSSQL ect...
การเขียน คำสั่ง SQL เพื่อดึกข้อมูล บอร์ดนี้ควรระบุโครงสร้างตารางของท่านในคำถามด้วยนะ

Moderator: mindphp

zcoolmax
PHP Jr. Member
PHP Jr. Member
Posts: 29
Joined: 08/04/2009 7:04 am

ถามเรื่องการใช้ ORDER BY ....... DESC LIMIT

Post by zcoolmax » 08/04/2009 7:06 am

คืออยากไห้ไห้ทำตามเงื่อนไข 2 อย่างอย่างอะคับ

ORDER BY ........ และก้อ ........ DESC LIMIT

ต้องทำอย่างไร

ขอคุณสำหรับคำตอบครับ

User avatar
mindphp
ผู้ดูแลระบบ MindPHP
ผู้ดูแลระบบ MindPHP
Posts: 22581
Joined: 22/09/2008 6:18 pm
Contact:

Re: ถามเรื่องการใช้ ORDER BY ....... DESC LIMIT

Post by mindphp » 08/04/2009 12:49 pm

ขอย้ายมาหมวดนี้นะครับ

Code: Select all

SELECT column_name(s)
FROM table_name
ORDER BY column_name(s) ASC|DESC 
หรือ ถ้าจะสั่งให้ ORDER BY สอง colum ก็ใส่ , ลงไปครับ
ติดตาม 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

zcoolmax
PHP Jr. Member
PHP Jr. Member
Posts: 29
Joined: 08/04/2009 7:04 am

Re: ถามเรื่องการใช้ ORDER BY ....... DESC LIMIT

Post by zcoolmax » 08/04/2009 4:24 pm

ลองใช้ดูแล้วทำดูแล้วมันเรียงงงๆ อะคับ

FROM characters WHERE `point` > 0 ORDER BY point,money DESC LIMIT 26")

คือผมอยากไห้มันจัดอันดับของ point ที่มากสุดกับ money ที่มากสุดขึ้นหน่ะคับ

แต่ทำแบบนี้แล้วกับเปนว่ามันแสดง money มากที่สุดก่อนแล้ว ค่อยแสดง point อ่าคับ

แนะนำทีคับ

User avatar
mindphp
ผู้ดูแลระบบ MindPHP
ผู้ดูแลระบบ MindPHP
Posts: 22581
Joined: 22/09/2008 6:18 pm
Contact:

Re: ถามเรื่องการใช้ ORDER BY ....... DESC LIMIT

Post by mindphp » 08/04/2009 4:37 pm

DESC หรือ ASC ใส่ได้ทั้งสองที่ครับ
ติดตาม 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

zcoolmax
PHP Jr. Member
PHP Jr. Member
Posts: 29
Joined: 08/04/2009 7:04 am

Re: ถามเรื่องการใช้ ORDER BY ....... DESC LIMIT

Post by zcoolmax » 08/04/2009 6:00 pm

ทำแล้วนะครับ

แต่ปันหาคือ

ค่าที่มากกลับไปอยู่ด้านล่างสุดของตาราง

ส่วนค่าที่น้อยสุดกับมาสุดบนสุดของตารางคับ

มีวีธีแก้ไหม

User avatar
mindphp
ผู้ดูแลระบบ MindPHP
ผู้ดูแลระบบ MindPHP
Posts: 22581
Joined: 22/09/2008 6:18 pm
Contact:

Re: ถามเรื่องการใช้ ORDER BY ....... DESC LIMIT

Post by mindphp » 08/04/2009 7:31 pm

มากไปน้อยใช้ DESC ครับ....
ติดตาม 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

zcoolmax
PHP Jr. Member
PHP Jr. Member
Posts: 29
Joined: 08/04/2009 7:04 am

Re: ถามเรื่องการใช้ ORDER BY ....... DESC LIMIT

Post by zcoolmax » 08/04/2009 9:13 pm

Code: Select all

<div align="center"><center>
<table border=1 bordercolor=black width=300 cellpadding='0' cellspacing='0'><tr>
<td align=center><font size=5>จัดอันดับตัวละคร</font></td>
</tr></table>

<table border=1 bordercolor=black width=300 cellpadding='0' cellspacing='0'><tr>
<td>อันดับ</td>
<td>ชื่อ</td>
<td>เลเวล</td>
<td>อาชีพ</td>
<td>เพศ</td>
<td>จุติ</td>
</tr><tr>
<?php
//All credits go to Rad
require('config.php');
$log_query = mysql_db_query("$db","SELECT `charname`,`level`,`sex`,`accountname`,`exp`,`class`,`rebirths` FROM characters WHERE `level` > 0 ORDER BY rebirths,level DESC LIMIT 101");
$num = mysql_num_rows($log_query);
$i=1;
while ($i < $num ) {
$log_row = mysql_fetch_row($log_query);
$char = $log_row[0];
$level = $log_row[1];
$sex = $log_row[2];
if ($sex == 0) { $sex2 = M; }
if ($sex == 1) { $sex2 = F; }
$accountname = $log_row[3];
$exp = $log_row[4];
$job = $log_row[5];
$rebirths = $log_row[6];
if ($job == 0) { $job2 = Vagrant; }
if ($job == 1) { $job2 = Mercenary; }
if ($job == 2) { $job2 = Acrobat; }
if ($job == 3) { $job2 = Assist; }
if ($job == 4) { $job2 = Magician; }
if ($job == 5) { $job2 = Puppeteer; }
if ($job == 6) { $job2 = Knight; }
if ($job == 7) { $job2 = Blade; }
if ($job == 8) { $job2 = Jester; }
if ($job == 9) { $job2 = Ranger; }
if ($job == 10) { $job2 = Ringmaster; }
if ($job == 11) { $job2 = Billposter; }
if ($job == 12) { $job2 = Psykeeper; }
if ($job == 13) { $job2 = Elementor; }
if ($job == 14) { $job2 = GateKeeper; }
if ($job == 15) { $job2 = Doppler; }
if ($job == 16) { $job2 = Knight; }
if ($job == 17) { $job2 = Blade; }
if ($job == 18) { $job2 = Jester; }
if ($job == 19) { $job2 = Ranger; }
if ($job == 20) { $job2 = Ringmaster; }
if ($job == 21) { $job2 = Billposter; }
if ($job == 22) { $job2 = Psykeeper; }
if ($job == 23) { $job2 = Elementor; }
if ($job == 24) { $job2 = Knight; }
if ($job == 25) { $job2 = Blade; }
if ($job == 26) { $job2 = Jester; }
if ($job == 27) { $job2 = Ranger; }
if ($job == 28) { $job2 = Ringmaster; }
if ($job == 29) { $job2 = Billposter; }
if ($job == 30) { $job2 = Psykeeper; }
if ($job == 31) { $job2 = Elementor; }
echo "<td> $i </td><td> $char </td><td> $level </td><td> $job2 </td><td> $sex2 </td><td> $rebirths รอบ </td></tr><tr>";
$i++;
}
?>
</tr></table> </div>
<div align="center"></div>
คือผลที่ออกมาคับตรงแถว level จะแสดงจากมากที่สุดไปหาน้อยที่สุด
แต่กับกันส่วนของ rebirths กับแสดงน้อยที่สุดไปหามากที่สุดอะคับ

ลองๆไล่ไห้ดูหน่อยนะครับ :-D :-D :-D

User avatar
mindphp
ผู้ดูแลระบบ MindPHP
ผู้ดูแลระบบ MindPHP
Posts: 22581
Joined: 22/09/2008 6:18 pm
Contact:

Re: ถามเรื่องการใช้ ORDER BY ....... DESC LIMIT

Post by mindphp » 09/04/2009 1:11 am

Code: Select all

ORDER BY rebirths DESC,level DESC 
ลองดูครับ
ติดตาม 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

Post Reply

Return to “SQL - Database”

Users browsing this forum: 9kitti and 10 guests