How will the subsequent results of mysql order by subquery also be displayed in the result set?
阿神
阿神 2017-05-18 10:55:42
0
1
639

mysql order by subquery, the subsequent results are also displayed in the result set

My mysql statement:

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 

How to display AGGREGATE in the result set? Or is there a better way?

阿神
阿神

闭关修行中......

reply all(1)
左手右手慢动作

It’s better to ask for others than to ask for yourself. Solved:

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 
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template