leetcode 1421 净现值查询(postgresql)

需求

表: NPV

±--------------±--------+

| Column Name | Type |

±--------------±--------+

| id | int |

| year | int |

| npv | int |

±--------------±--------+

(id, year) 是该表主键.

该表有每一笔存货的年份, id 和对应净现值的信息.

表: Queries

±--------------±--------+

| Column Name | Type |

±--------------±--------+

| id | int |

| year | int |

±--------------±--------+

(id, year) 是该表主键.

该表有每一次查询所对应存货的 id 和年份的信息.

写一个 SQL, 找到 Queries 表中每一次查询的净现值.

结果表没有顺序要求.

查询结果的格式如下所示:

NPV 表:

±-----±-------±-------+

| id | year | npv |

±-----±-------±-------+

| 1 | 2018 | 100 |

| 7 | 2020 | 30 |

| 13 | 2019 | 40 |

| 1 | 2019 | 113 |

| 2 | 2008 | 121 |

| 3 | 2009 | 12 |

| 11 | 2020 | 99 |

| 7 | 2019 | 0 |

±-----±-------±-------+

Queries 表:

±-----±-------+

| id | year |

±-----±-------+

| 1 | 2019 |

| 2 | 2008 |

| 3 | 2009 |

| 7 | 2018 |

| 7 | 2019 |

| 7 | 2020 |

| 13 | 2019 |

±-----±-------+

结果表:

±-----±-------±-------+

| id | year | npv |

±-----±-------±-------+

| 1 | 2019 | 113 |

| 2 | 2008 | 121 |

| 3 | 2009 | 12 |

| 7 | 2018 | 0 |

| 7 | 2019 | 0 |

| 7 | 2020 | 30 |

| 13 | 2019 | 40 |

±-----±-------±-------+

(7, 2018)的净现值不在 NPV 表中, 我们把它看作是 0.

所有其它查询的净现值都能在 NPV 表中找到.

输入

输出

sql 复制代码
select q.id,q.year,coalesce(npv,0) as npv
from queries q
left join npv n
on q.id=n.id and q.year=n.year
相关推荐
Albert Edison3 小时前
【Python】学生管理系统
开发语言·数据库·python
追随者永远是胜利者5 小时前
(LeetCode-Hot100)253. 会议室 II
java·算法·leetcode·go
Jason_Honey25 小时前
【平安Agent算法岗面试-二面】
人工智能·算法·面试
程序员酥皮蛋5 小时前
hot 100 第三十五题 35.二叉树的中序遍历
数据结构·算法·leetcode
追随者永远是胜利者5 小时前
(LeetCode-Hot100)207. 课程表
java·算法·leetcode·go
heimeiyingwang6 小时前
企业供应链 AI 优化:需求预测与智能调度
大数据·数据库·人工智能·机器学习
仰泳的熊猫6 小时前
题目1535:蓝桥杯算法提高VIP-最小乘积(提高型)
数据结构·c++·算法·蓝桥杯
那起舞的日子7 小时前
动态规划-Dynamic Programing-DP
算法·动态规划
山岚的运维笔记7 小时前
SQL Server笔记 -- 第73章:排序/对行进行排序
数据库·笔记·后端·sql·microsoft·sqlserver
闻缺陷则喜何志丹7 小时前
【前后缀分解】P9255 [PA 2022] Podwyżki|普及+
数据结构·c++·算法·前后缀分解