我的原始查询是
SELECT
at."category" AS "category",
at."month" AS "month",
sum(at.price_aft_discount) as "sum",
sum(at.qty_ordered) as "sum2"
FROM
all_trans at
GROUP BY
at."category",
at."month"
ORDER BY
at."category" ASC,
at."month" asc
在 DBeaver 中执行上述查询时,总和列给出警告:sum: numeric(131089,0) (Read-only: No corresponding table column)。给出了相同的警告sum2
我使用 Gorm 在 Go 中查询保存结果的代码是:
type ATQueryResult struct {
category string `gorm:"column:category"`
month string `gorm:"column:month"`
sum float32 `gorm:"column:sum"`
sum2 float32 `gorm:"column:sum2"`
}
queryString := ... // same as above
var result []ATQueryResult
db.Table(model.TableAllTrans).Raw(queryString).Find(&result)
fmt.Println(result[3])
但问题是,所有result[i].sum和result[i].sum2是0-zero。在 DBeaver 上实时查询时,我可以看到实际的总和数(全部非零),尽管有上述警告。但是当我尝试将查询结果扫描到 时result,所有的总和值为 0。
精慕HU
呼唤远方
随时随地看视频慕课网APP
相关分类