sql - 在 SQL 中查找总和为特定数量(或其他表中的 amt)的行的组合

标签 sql

Table_1
D_ID Integer
Deposit_amt integer

Table_2
Total_ID
Total_amt integer



是否可以编写一个 select 语句来查找 Table_1 中的所有行?谁的Deposit_amt总和到 Total_amtTable_2 .两个表中都有多行。

Table_2中的第一行有一个 Total_amt=100 .我想知道在 Table_1带有 D_ID 的行2、6、12 相加 = 100,行 D_ID 2、3、42 相加 = 100,以此类推。

帮助表示赞赏。让我知道是否需要澄清。

我问这个问题是因为有人作为他们工作的一部分有一个交易列表和一个总数列表,她需要找到可能创建总数的交易列表。我同意这听起来很危险,因为找到总和为总数的交易组合并不能保证它们创造了总数。

我不知道这是一个 np-complete 问题。

最佳答案

把这个送给你的 friend ,祝她好运..:p
XKCD reference image

关于sql - 在 SQL 中查找总和为特定数量(或其他表中的 amt)的行的组合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2255908/

相关文章:

sql - 如何优化SQL查询以达到最短执行时间

sql - MySQL MyISAM 更新语句是否锁定表并阻止读取?

java - 使用 Ebean 使用 SUM、MIN、MAX 等进行 ORDER BY

MYSQL - 来自两个表的查询

sql - 在新行中添加 max(value)+1,这会成为问题吗?

mysql - 更新多行mysql

sql - Athena 查询存储为字符串的 JSON 字段

MYSQL - 从表 1 中进行计数和分组并从表 2 中获取信息

sql - 查找在某一列中出现多次的值的所有行

c# - 如何在 C# 中使用 MySqlDataAdapter 中的 SELECT 查询从表 A 中获取行并从表 B 中获取行数?数据网格WPF