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
相关推荐
Zevalin爱灰灰1 小时前
现代密码学 第二章——流密码【下】
算法·密码学
飞Link3 小时前
大模型长文本的“救命稻草”:深度解析 TurboQuant 与 KV Cache 压缩技术
算法
阿波罗尼亚4 小时前
数据库序列(Sequence)
数据库
郝学胜-神的一滴4 小时前
深度学习优化核心:梯度下降与网络训练全解析
数据结构·人工智能·python·深度学习·算法·机器学习
Junsir大斗师4 小时前
Nginx服务器代理Postgresql-16后端数据库
数据库·nginx
Je1lyfish4 小时前
CMU15-445 (2025 Fall/2026 Spring) Project#3 - QueryExecution
linux·c语言·开发语言·数据结构·数据库·c++·算法
许彰午4 小时前
03-二叉树——从递归遍历到非递归实现
java·算法
Brilliantwxx5 小时前
【C++】 vector(代码实现+坑点讲解)
开发语言·c++·笔记·算法
m0_596749096 小时前
如何防止SQL拼接漏洞_使用PDO对象实现安全的SQL交互
jvm·数据库·python
NorburyL6 小时前
DPO笔记
深度学习·算法