 |
สอบถามปัญหาการเรียงข้อมูลจากมากไปน้อย จากการเชื่อมกันหลายตารางนะครับ |
|
 |
|
|
 |
 |
|
ผมมีปัญหาอยากสอบถามครับเรื่องการเรียงลำดับจาก id จากมากขึ้นก่อนครับ ตัวอย่าง sql ผมครับ
Code (PHP)
$sql = "SELECT e.*, d.dept_name, t.emp_type_name, l.total_day, l.la_id, l.eday, l.emonth, l.eyear,l.sday, l.smonth, l.syear, l.d_previous, l.d_previous1, l.pre_totalday FROM lib_emp_info e, lib_dept d, lib_emp_type t, lib_la l WHERE e.dept_id = d.dept_id AND e.emp_type_id = t.emp_type_id AND e.emp_id =".$userid;
คำถามนะครับคือว่าผมต้องการจะเรียงลำดับ id ในตาราง lib_la (ที่ผมทำตัวหนาไว้นะครับ) ให้มันเรียงจากมากขึ้นมาก่อนนะครับเวลาแสดงผลนะครับ ประมาณว่ามี ลำดับ id อยู่คื่อ
1 2 3 4 5
ก็ให้มันนำ ลำดับที่ 5 ขึ้นมาแสดงนะครับ
ซึ่งปกติเราก็จะใช้คำสั่ง
Code (PHP)
$sql = "select * from lib_la order by id DESC";
แต่พอเชื่อมกันหลายเงื่อนไขแล้วผมงงครับไม่รู่้่ ว่าจะสั่งคำสั่งแบบไหนนะครับ
ขอขอบคุณล่วงหน้าครับ
Tag : PHP, MySQL
|
|
 |
 |
 |
 |
Date :
2011-08-24 15:21:19 |
By :
rabit_it |
View :
1069 |
Reply :
5 |
|
 |
 |
 |
 |
|
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
มันก็อันเดียวกับที่คุณส่งมานั่นแหล่ะครับ
order by l.la_id DESC
|
 |
 |
 |
 |
Date :
2011-08-24 15:57:03 |
By :
mangkunzo |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ขอบคุณครับ
แต่พอผมใส่แล้วมัน เป็นแบบนี้นะครับ
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in c:\appserv\www\eper\index.php on line 61
ซึ่ง line 61 มันคือ
$result = mysql_query($sql);
$row = mysql_fetch_array($result); ตัวนี้ครับ
ผมเอา order by l.la_id DESC ไปใส่หลัง From แบบนี้ถูกมั้ยครับ ช่วยแนะนำด้วยครับ
ขอบคุณครับ
|
 |
 |
 |
 |
Date :
2011-08-25 10:16:40 |
By :
rabit_it |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ตอบความคิดเห็นที่ : 2 เขียนโดย : rabit_it เมื่อวันที่ 2011-08-25 10:16:40
การเลือกหลายๆตาราง ต้องระมัดระวังเรื่อง การออกแบบโครงสร้างของตารางน่ะครับ
การเลือกมาแบบนี้ แสดงว่าข้อมูลมีความสัมพันธ์กันจึงจะสามารถ Query ออกมาได้น่ะครับ
รายละเอียดของการตอบ ::
ลองดูน่ะครับ พอดีผมก็ไม่เห็นโครงสร้างตารางคุณอ่ะครับ แต่จะลองพยายามจินตนาการช่วยน่ะครับ..อิอิ
Code (PHP)
$sql = SELECT
d.dept_name,
t.emp_type_name,
l.total_day,
l.la_id,
l.eday,
l.emonth,
l.eyear,
l.sday,
l.smonth,
l.syear,
l.d_previous,
l.d_previous1,
l.pre_totalday,
d.dept_id,
(select * from lib_emp_info e where e.dept_id = d.dept_id)
FROM lib_emp_info e,
lib_dept d,
lib_emp_type t,
lib_la l
WHERE e.emp_type_id = t.emp_type_id
AND e.emp_id =$userid
order by l.la_id DESC
|
ประวัติการแก้ไข 2011-08-26 08:43:50
 |
 |
 |
 |
Date :
2011-08-26 08:35:57 |
By :
mangkunzo |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ขอบคุณมากครับ......
|
 |
 |
 |
 |
Date :
2011-08-30 08:31:05 |
By :
rabit_it |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
เวลาเราเรียกข้อมูลมา โดยเรียกที่เรคอร์ แล้ว ใช้คำสั่ง order by e_idnum asc";
เช่น "Select d_id , d_Identification, d_name , d_surname, d_numhome, d_mo, d_district,d_aowper, d_province, d_numcity, d_tel, d_date, d_model, d_numPP, d_numday, d_money From tb_Dataroom where d_chk = 'มีผู้พักแล้ว' order by d_id asc";
เทพช่วยบอกที ได้อยากได้ทำโปรเจ็กนะ
|
 |
 |
 |
 |
Date :
2011-10-25 01:30:15 |
By :
chaina_red |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
|
|