简体   繁体   English

如何从另一个MySQL减去一行

[英]How to subtract the one row from another MySQL

Given that a table as enclosed 鉴于附表

在此处输入图片说明

How do I find the difference between Mac and Windows sold each day. 如何找到每天出售的Mac和Windows之间的区别。 Can someone pls explain the logic 有人可以解释一下逻辑吗

An INNER JOIN would do the job. 内部联接将完成这项工作。

SELECT 
WindowsTable.Date,
ABS(WindowsTable.Sold - MacTable.Sold) absoluteDifference 
FROM
(SELECT 
*
FROM producttable
WHERE Products = 'Windows') WindowsTable

INNER JOIN 

(
SELECT 
*
FROM producttable
WHERE Products = 'Mac' ) MacTable

ON WindowsTable.Date = MacTable.Date;

DEMO HERE 此处演示

Try reshaping your query using an INNER JOIN on date: 尝试在日期使用INNER JOIN重塑查询:

SELECT macs_sales.Date, (MacsSold - WindowsSold) AS sales_difference
FROM
(
  SELECT Date, Sold as MacsSold
  FROM computer_sales
  WHERE Products="Mac"
) macs_sales
INNER JOIN
(
  SELECT Date, Sold as WindowsSold
  FROM computer_sales
  WHERE Products="Windows"
) windows_sales
ON macs_sales.Date = windows_sales.Date

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM