mysql查询sql帮忙

SELECT u.`username`,wa.`title`,wa.`realmoney`,w.* 
                    FROM `wwj_winner` w 
                    LEFT JOIN `wwj_wawa` wa ON w.`wid` = wa.`id`
                    LEFT JOIN `wwj_user` u ON w.`uid` = u.`id`
                    WHERE 1=1 and out_status = 0 and name != ''
                       GROUP BY uid
                    ORDER BY w.`address_addtime` DESC 
                    LIMIT 0,20

现在我想where条件中 name为空的时候不使用group by uid。我该怎么改sql

阅读 2.3k
2 个回答
SELECT u.`username`,wa.`title`,wa.`realmoney`,w.* 
FROM `wwj_winner` w 
LEFT JOIN `wwj_wawa` wa ON w.`wid` = wa.`id`
LEFT JOIN `wwj_user` u ON w.`uid` = u.`id`
WHERE 1=1 and out_status = 0 and name != '' GROUP BY uid
union
SELECT u.`username`,wa.`title`,wa.`realmoney`,w.* 
FROM `wwj_winner` w 
LEFT JOIN `wwj_wawa` wa ON w.`wid` = wa.`id`
LEFT JOIN `wwj_user` u ON w.`uid` = u.`id`
WHERE 1=1 and out_status = 0 and name != ''
ORDER BY w.`address_addtime` DESC 
LIMIT 0,20

WHERE 1=1 and out_status = 0 and name != '' and name is not null

推荐问题