 |
SELECT Count ตารางที่ไม่มีข้อมูลให้คืนค่า 0 ไม่ทราบต้องแก้ไขอย่างไรครับ |
|
 |
|
|
 |
 |
|
Code (SQL)
SELECT tbl_item.*, COUNT(coalesce( tbl_like.refid, 0)) AS c FROM tbl_like
INNER JOIN tbl_item ON tbl_like.refid = tbl_item.id
WHERE tbl_like.`status` <> '0'
GROUP BY coalesce( tbl_like.refid, 0)
ORDER BY c DESC
ไม่แน่ใจว่าจะทำได้ตามต้องการหรือเปล่านะครับ
คำสั่ง coalesce(fieldname, default_for null ) เปลี่ยน null เป็นค่าที่กำหนด
|
 |
 |
 |
 |
Date :
2014-07-11 07:44:02 |
By :
Chaidhanan |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ยังไม่ขึ้นเลยครับ แต่ขอบคุณมากนะครับ 


ผมต้องการให้เวลาค้นหาขึ้นแบบนี้ครับ
| id | name | like |
| 1 | abc | 2 |
| 2 | def | 0 |
| 3 | ghi | 0 |
|
ประวัติการแก้ไข 2014-07-11 12:10:35
 |
 |
 |
 |
Date :
2014-07-11 12:08:16 |
By :
chudjane_th |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
Code (SQL)
SELECT t1.*, sum(coalesce( t2.like, 0)) AS c FROM t1
left JOIN t2 on t2.refid = t1.id
GROUP BY t1.id
ORDER BY c DESC
|
 |
 |
 |
 |
Date :
2014-07-11 13:32:48 |
By :
Chaidhanan |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ได้แล้วครับ ขอบพระคุณพี่ Chaidhanan มากๆ ครับ
|
 |
 |
 |
 |
Date :
2014-07-11 13:50:49 |
By :
chudjane_th |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
|
|