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