DSum 在 3 个字段中使用多个条件选择正确的数据库记录时出现错误

问题描述 投票:0回答:1

在以下 Google-sheets 数据库中,我无法在 3 个字段中选择具有多个条件的正确记录。

植物 数量 田野 有效期
橡木 10 A 2034-11-01
樱桃 5 B 2026-04-01
榆木 20 A 2038-12-01
枫木 5 B 2025-11-01
橡木 30 B 2033-05-01
松木 10 A 2025-12-31
红豆杉 5 B 2025-03-01
红豆杉 20 A 2028-06-01
榆木 3 A 2024-12-31

用这个数组

植物 田野 过期日期
红豆杉 A <=2034-10-21
B

还有这个功能

DSUM($A$1:$D$10;"Number";$I$16:$K$19)

我无法获得红豆杉树的正确总和 (25),因为该函数计算为 108。

然后使用相同的数据库和以下数组

植物 田野 过期日期
橡木 B >=2026-04-24
枫木 A <=2031-10-22
樱桃
榆木
松木

我尝试获取田地 A 和 B 中成熟度在 >=2026-04-24 到 <=2031-10-22 with this function:

之间的橡树、枫树、樱桃树、榆树和松树的总和

DSUM($A$1:$D$10;"Number";$I$8:$K$13)

得到的结果是68,而只有10棵树满足要求。

以防万一视觉方法更方便,

在下面的链接中,我在黄色框中报告了这两个 DSUM 函数以及另一个运行正常的函数。

我显示错误的示例数据库

database sorting google-sheets sum
1个回答
0
投票

使用

QUERY()
功能。

=QUERY(A2:D10;"select sum(B) where A matches '" & TEXTJOIN("|";1;I9:I13)&"' and C matches '" & TEXTJOIN("|";1;J9:J13)&"' and D>= date '" & TEXT(G3;"yyyy-mm-dd")& "' and D<= date '" & TEXT(G4;"yyyy-mm-dd")& "'")

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.