SQL架构

表: Sales

+---------------+---------+
| Column Name   | Type    |
+---------------+---------+
| sale_date     | date    |
| fruit         | enum    |
| sold_num      | int     |
+---------------+---------+
(sale_date,fruit) 是该表主键.
该表包含了每一天中"苹果" 和 "桔子"的销售情况.

写一个 SQL 查询, 报告每一天 苹果 和 桔子 销售的数目的差异.

返回的结果表, 按照格式为 ('YYYY-MM-DD') 的 sale_date 排序.

查询结果表如下例所示:

Sales 表:
+------------+------------+-------------+
| sale_date  | fruit      | sold_num    |
+------------+------------+-------------+
| 2020-05-01 | apples     | 10          |
| 2020-05-01 | oranges    | 8           |
| 2020-05-02 | apples     | 15          |
| 2020-05-02 | oranges    | 15          |
| 2020-05-03 | apples     | 20          |
| 2020-05-03 | oranges    | 0           |
| 2020-05-04 | apples     | 15          |
| 2020-05-04 | oranges    | 16          |
+------------+------------+-------------+Result 表:
+------------+--------------+
| sale_date  | diff         |
+------------+--------------+
| 2020-05-01 | 2            |
| 2020-05-02 | 0            |
| 2020-05-03 | 20           |
| 2020-05-04 | -1           |
+------------+--------------+在 2020-05-01, 卖了 10 个苹果 和 8 个桔子 (差异为 10 - 8 = 2).
在 2020-05-02, 卖了 15 个苹果 和 15 个桔子 (差异为 15 - 15 = 0).
在 2020-05-03, 卖了 20 个苹果 和 0 个桔子 (差异为 20 - 0 = 20).
在 2020-05-04, 卖了 15 个苹果 和 16 个桔子 (差异为 15 - 16 = -1).
select
ss1.sd sale_date,ss1.s1s-ss1.s2s diff
from
(
select
s1.sale_date sd,s1.fruit s1f,s1.sold_num s1s,s2.fruit s2f ,s2.sold_num  s2s  # 先自连接使 apples 和 orange 在一行 便于后期 取值
from
Sales s1, Sales s2
where s1.sale_date = s2.sale_date and s1.fruit != s2.fruit
)  ss1where ss1.s1f = 'apples'
order by sale_date 

用case:

SELECT sale_date,SUM(CASE WHEN fruit='apples' THEN sold_num ELSE -sold_num END) AS diff
FROM sales
GROUP BY sale_date
ORDER BY sale_date;

1445. 苹果和桔子相关推荐

  1. LeetCode MySQL 1445. 苹果和桔子

    文章目录 1. 题目 2. 解题 1. 题目 表: Sales +---------------+---------+ | Column Name | Type | +---------------+ ...

  2. leetcode-SQL-1445. 苹果和桔子

    leetcode-SQL-1445. 苹果和桔子 题目 解题 题目 题目链接 表: Sales +---------------+---------+ | Column Name | Type | + ...

  3. 每一题-95(苹果和桔子)

    题95: 根据下表写一个 SQL 查询, 报告每一天 苹果 和 桔子 销售的数目的差异,返回的结果表, 按照格式为 ('YYYY-MM-DD') 的 sale_date 排序. 其中:sale_dat ...

  4. 问题 D: 3.18 买水果   用50元钱买了三种水果。各种水果加起来一共100个。西瓜5元一个,苹果1元一个,桔子1元3个,设计一程序输出西瓜、苹果、桔子各买了几个。

    问题 D: 3.18 买水果 时间限制: 1 Sec 内存限制: 128 MB 提交: 3128 解决: 2239 [提交] [状态] [讨论版] [命题人:tianhl] 题目描述 用50元钱买了三 ...

  5. LeetCode MySQL解题目录

    已完成的 LeetCode MySQL 数据库题目.点击查看我的 LeetCode 算法解题目录. 已解决 123/123 - 简单 54 中等 51 困难 18 前置入门学习 MySQL 基本查询. ...

  6. LeetCode数据库题目1-123

    LeetCode数据库题目1-123 175. 组合两个表 难度简单 SQL架构 表1: Person +-------------+---------+ | 列名 | 类型 | +--------- ...

  7. LeetCode-数据库题(二) (52-125题 到1565)

    文章目录 [1075. 项目员工 I](https://leetcode-cn.com/problems/project-employees-i/) [1076. 项目员工II](https://le ...

  8. LeetCode刷SQL题

    https://leetcode-cn.com/problemset/database/ 题目都是leetcode 上了可以点击题目会有相应的链接 由于个人比较喜欢用开窗函数,所以都优先用了开窗 ,当 ...

  9. leetcode数据库题目1-123题(20-08-14)(1)

    难度简单 SQL架构 表1: Person +-------------+---------+ | 列名 | 类型 | +-------------+---------+ | PersonId | i ...

最新文章

  1. JMeter脚本获取变量名、检验字符串值
  2. c++ 预处理命令 预定义变量用法
  3. redhat mysql tar_mysql5.7版本tar包手动安装---redhat7.0
  4. 【POJ 1200】Crazy Search(将字符映射为数字,将NC进制hash成10进制)
  5. close 不弹出对话框
  6. div设置overflow-scroll滚动之后,jq获取其子元素的offset.top出现问题。
  7. 转-HTTPClient调用https请求,通过基本认证用户名密码(Basic Auth)
  8. JPA中的@MappedSuperclass
  9. c++ socket线程池_java 网络编程,Socket编程
  10. Windows Server 2012活动目录基础配置与应用(新手教程)之9---了解组策略
  11. 利用MFC进行开发的通用方法介绍
  12. IIS服务器应用程序不可用的解决办法
  13. java8 方法引用详解_Java8中如何通过方法引用获取属性名详解
  14. mac识别hid键盘_Ubuntu Mac 键盘设置F1-F12功能键
  15. Docker 架构原理剖析,万字详解!
  16. 操作系统课程设计报告(文件系统)
  17. Java基础-面向对象-封装继承多态
  18. 《AlignedReID: Surpassing Human-Level Performance in Person Re-Identification》论文解读
  19. python 小括号转译_Python-HTML转义字符
  20. bash: node: command not found

热门文章

  1. 文件夹怎么进行复制粘贴?可以快捷复制文件夹的软件
  2. Java 爬取微信公众号文章(文字 + 图片)
  3. 使用 qrcodejs2 生成二维码详细API和参数
  4. 解决mysql load data加载本地null数据,表里出现0的情况
  5. Flink 教程 gitbook 从入门到入土(详细教程)
  6. julia的Unicode 字符输入
  7. 【知识图谱】构建《射雕三部曲》图谱(CSV文件导入)
  8. 一文带你读懂“TRIZ”
  9. legacy服务器安装系统,支持UEFI和LEGACY的多系统安装U盘
  10. POI生成word文档,包括标题,段落,表格,统计图(非图片格式)