订购包含多个表格的热门商品

时间:2012-08-14 17:23:14

标签: mysql

我有一份产品清单,其中我可以随时获得最受欢迎的产品。我还有一份产品清单B.此列表每天都会更改。

我想要做的是显示列表B的所有产品,并使用列表A的热门产品进行订购。例如:

列表A将包含:

banana
apple
banana
orange
apple
banana

列表B将包含:

potato
rice
banana
bread
orange

现在输出必须是:

banana
orange
potato
rice
bread

如何使用单个SQL命令执行此操作? 感谢

1 个答案:

答案 0 :(得分:2)

    SELECT B.Col1, CNT FROM LISTB B
    LEFT OUTER JOIN 
    (SELECT Col1, COUNT(*) CNT 
     FROM LISTA A GROUP BY Col1) A1 ON b.col1 = A1.col1
    ORDER BY CNT DESC

检查一下 - http://sqlfiddle.com/#!3/34f5f/1