簡體   English   中英

當聚合 function 為 null 時,Sequelize 得到結果

[英]Sequelize get results when aggregate function is null

我有以下代碼返回客戶。 問題是我只為已下訂單並創建地址的客戶獲得結果。

CustomerModel.findAll({
    attributes: {
      include: [
        [db.sequelize.fn("COUNT", db.sequelize.col("orders.id")), "orderCount"],
        [db.sequelize.literal(`(
          SELECT o.createdDate
          FROM orders AS o
          WHERE
              o.customerId = customer.id
          ORDER BY o.createdDate DESC
          LIMIT 1
      )`),
      'latestOrderDate'],
      [db.sequelize.fn('sum', db.sequelize.col('orders.amount')), 'totalAmount'],
      ]
    },
    include: [
      { model: UserModel, as: 'user' },
      { model: AddressModel, required:false },
      { model: OrderModel, attributes: [], required:false }
    ]
  })

無論有訂單或地址,是否有可能獲得所有客戶?

謝謝!

我最終將兩個 sequelize.fn 更改為文字,它就像一個魅力!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM