mysql order by 子查询 后面的结果 如何 也显示在结果集里
我的 mysql语句:
SELECT * FROM wht_user AS t1 WHERE pid =79 ORDER BY (
SELECT sum( `distribution_money` ) AS
AGGREGATE FROM wht_distribution_detail AS t2
WHERE t1.id = t2.uid
AND `puid` =79
AND `status` =4
GROUP BY `uid`
ORDER BY `updatetime` DESC
) DESC
如何 将 AGGREGATE 也显示在结果集里 或者有什么 更好的办法?
ringa_lee2017-05-18 10:57:42
求人不如求己 已解决:
SELECT * , COALESCE( SUM( `distribution_money` ) , 0.00 ) AS
AGGREGATE
FROM (
SELECT t1. * , t2 . *
FROM `wht_user` AS t1
LEFT JOIN (
SELECT `uid`, `distribution_money`
FROM `wht_distribution_detail`
WHERE `puid` = 79
AND `status` = 4
) AS t2 ON t1.`id` = t2.`uid`
) AS s2
WHERE `pid` =79
GROUP BY `id`
ORDER BY AGGREGATE DESC