即使我的问题被警告为类似的标题,我在这里找不到任何类似的问题。让我详细解释一下:我有两个表(我正在使用mysql)插入了这些值:
餐桌产品:
id name
1 TV
2 RADIO
3 COMPUTER
表sales(product\ id是引用products(id)的fk): id quantity product_id 1 50 2 2 100 3 3 200 3
电视机还没卖出去,收音机卖了1台(50台),电脑卖了2台(100台一台,200台一台);
现在,我必须创建一个查询,在这里我可以显示产品及其销售情况,但是有一些条件使该任务变得困难:
1-如果没有销售,则显示明显为空;
2-如果有1次销售,显示该销售;
3-如果有超过一个销售,显示最新的销售(我已经尝试使用函数max(id)使它简单,但没有工作);
在上面的表示例中,我希望在正确的sql查询之后显示: products.NAME sales.QUANTITY TV NULL RADIO 50 COMPUTER 200
我尝试了很多连接、内部连接等,但是没有找到我期望的结果。哪个sql查询可以给出我期望的答案?任何帮助都将不胜感激。谢谢。
2条答案
按热度按时间nnt7mjpx1#
希望下面的查询工作。
pb3s4cty2#
在mysql 8.0中,您可以执行以下操作:
如果您使用的是较旧的mysql,则可以使用表表达式: