 |
[php] อยากให้เรียงลำดับ จากฐานข้อมูลมา ทำไงหรอคับ ผมอยากให้ข้อมูลที่จะแสดง แสดง ลำดับที่ ตามที่ได้ |
|
 |
|
|
 |
 |
|
search gg คับ เกี่ยวกับ order by
|
 |
 |
 |
 |
Date :
2010-02-15 09:59:20 |
By :
Po[k]@za |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
เวลาเขียนโค้ด sql ให้ใช้คำสั่ง order by ตามด้วย desc หรือ asc หลังด้วยครับ
desc คือ มาก-->น้อย
asc น้อย-->มาก
เช่น
select * from product order by product_id desc
|
 |
 |
 |
 |
Date :
2010-02-15 10:10:09 |
By :
@chai |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
พี่คับ แล้วถ้าผมต้องการ เรียงข้อมูล โดยข้อมูลในฐานข้อมูลอยู่กระจัดกระจาย ซึ่งผมต้องการเพียงแค่โปรแกรมภาษาไทยเพียงอย่างเดียว เช่น โปรแกรมภาษาไทย มีอยู่ที่ แถวที่ 1,3,5,7,9 อย่างนี้ จะเขียนยังไงหรอคับ
ตัวอย่งที่ต้องการ
| ลำดับที่ | ชื่อ | นามสกุล | โปรแกรม | คณะ | วันที่ |
-----1-------- a --------a--------------t1---------- k1--------
-----2-------- b --------b -------------t1---------- k1--------
-----3---------c---------c ------------ t1---------- k1 -
-----4---------d--------d -------------t1---------- k1 -
-----5---------e--------e -------------t1-----------k1 -
ขอคำแนะนำหน่อยนะคับ
|
 |
 |
 |
 |
Date :
2010-02-15 10:50:03 |
By :
arsaetha |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
เพิ่ม where ลงไปในคำสั่ง sql ครับ เช่น
select * from program where program_name='t1' order by program_id asc
|
 |
 |
 |
 |
Date :
2010-02-15 11:38:43 |
By :
@chai |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
พี่คับ แล้วถ้า แถวที่ 1 เท่ากัน เราจาให้ไปนับแถวต่อไปแทนทำไงอ่ะคับ เช่น
ลำดับ ชื่อ ทอง เงิน ทองแดง รวม
1 A 20 5 2 27
2 B 20 10 1 31
3 C 11 3 5 19
4 D 12 5 4 21
ถ้าเหรียญ ทองเท่ากัน จาหั้ยไปนับเหรียญเงินที่มาก ต่อทำไงอ่ะคับ ช่วยที !!
|
 |
 |
 |
 |
Date :
2011-03-14 16:45:51 |
By :
Bank |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ลำดับ ---------------- ชื่อ -------------- ทอง -------- เงิน --------- ทองแดง --------- รวม
1----- -----------------A -----------------20----------- 5--------------- 2--------------- 27
2---------------------- B -----------------20 ----------10 --------------1---------------- 31
3---------------------- C---------------- 11----------- 3 ---------------5 ----------------19
4 ----------------------D ----------------12----------- 5 ---------------4 -----------------21
ถ้าเหรียญ ทองเท่ากัน จาหั้ยไปนับ เหรียญเงินที่มากสุด แล้วถ้าเหรีนญเงินเท่ากัน ไปนับเหรีญทองแดงที่มากต่อ ต่อทำไงอ่ะคับ ช่วยที !
|
 |
 |
 |
 |
Date :
2011-03-14 16:49:53 |
By :
Bank |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
order by gold desc, silver desc, bronze desc
|
 |
 |
 |
 |
Date :
2011-03-14 17:01:23 |
By :
PlaKriM |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ความคิดเห็นที่ 8 ผมทำหลายรอบแล้ว มันแสดงไม่หมด แสดงทุกแถวยกเว้นแถวแรก คือเรียงลำดับได้แต่แสดงไม่ครบทุกแถว
|
 |
 |
 |
 |
Date :
2020-11-11 22:24:10 |
By :
bb |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
เอาโค๊ด มาวาง
เดาว่า แถวแรกถูกอ่านค่าไปแล้ว แต่ไม่ได้ถูกนำมาแสดงผล
ทำให้ seeker pointer ถูกเพิ่ม เมื่อนำมาเข้า loop ทำให้เริ่มจาก แถวที่ 2
Code (PHP)
mysqli_data_seek($result,0);
while($ro=$result->fetch_object()){
//
}
|
ประวัติการแก้ไข 2020-11-12 07:54:18
 |
 |
 |
 |
Date :
2020-11-12 07:52:52 |
By :
Chaidhanan |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
|
|