gpt4 book ai didi

sql - 使用左外连接对 SUM 排序

转载 作者:行者123 更新时间:2023-11-29 12:49:44 24 4
gpt4 key购买 nike

我有一个 Rails 应用程序,我正在使用范围进行这样的排序:

group('"expenditures"."id"').order('SUM("expenditure_items"."amount") ' +  direction)

在此之前有一个outer_left_join(:expenditure_items)。问题是,当没有 expenditure_items 时,SUM 首先对其他非零和项目进行排序。它看起来像这样:

  • 求和
  • 100 美元
  • 200 美元
  • 300 美元
  • $0
  • $0
  • $0

我先要 $0 件。

最佳答案

你可以使用COALESCE:

group('"expenditures"."id"').order('COALESCE(SUM("expenditure_items"."amount"),0) '+ direction)

NULLS FIRST/LAST子句:

SUM("expenditure_items"."amount")  NULLS FIRST

关于sql - 使用左外连接对 SUM 排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57136033/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com