Mysql 按多个表中重复项的数量排序
我会尽量让这件事尽可能简单Mysql 按多个表中重复项的数量排序,mysql,Mysql,我会尽量让这件事尽可能简单 有3个表(A、B、C),每个表都有一个名称列(并且只有一个名称列)。我想从三个单独的表中选择所有行(没有重复项),但更重要的是,按重复项的数量对它们进行排序,这样,如果表A、B和C中存在“Charles”,那么它将首先显示在结果中。只存在于一个表中的名称将出现在结果的末尾。任何帮助都将不胜感激。谢谢 查看我编辑的结果:使用union all我喜欢这样。只是一个注释:当name为null时,它将计为0,并将位于结果集的底部。要使其位于顶部,它应该是count(*) s
有3个表(A、B、C),每个表都有一个名称列(并且只有一个名称列)。我想从三个单独的表中选择所有行(没有重复项),但更重要的是,按重复项的数量对它们进行排序,这样,如果表A、B和C中存在“Charles”,那么它将首先显示在结果中。只存在于一个表中的名称将出现在结果的末尾。任何帮助都将不胜感激。谢谢 查看我编辑的结果:使用
union all
我喜欢这样。只是一个注释:当name为null时,它将计为0,并将位于结果集的底部。要使其位于顶部,它应该是count(*)
select name from
(select name from A
UNION ALL
select name from B
UNION ALL
select name from C) t
group by name order by count(name) DESC