从下表中生成支出报告

时间:2012-06-25 19:05:33

标签: mysql django-models django-queryset

我目前的项目是从下表中生成一份支出报告。完整的报告是显示用户按特许经营的零售类别(例如

)消费的细分

用户1

retail_category 1:$ 20

retail_category 2:30美元

retail_category 3:35美元

用户2

retail_category 1:$ 10

retail_category 2:$ 15

retail_category 3:$ 5

以下是表格:

class User(models.Model):
    id_user = models.AutoField(primary_key = True)

class Franchises(models.Model):
    id_franchise = models.AutoField(primary_key=True)
    retail_category = models.IntegerField(default=99)  # values are 1 to 13

class Stores(models.Model):
    id_store = models.AutoField(primary_key=True)
    franchise = models.ForeignKey(Franchises, db_column='id_franchise')

class Receipts(models.Model):
    id_receipt = models.AutoField(primary_key=True)
    store = models.ForeignKey(Stores, db_column='id_store')
    user = models.ForeignKey(User, db_column='id_user')
    grand_total = models.DecimalField(max_digits=19, decimal_places=4)

我很欣赏任何原始的mysql或django模型查询。谢谢,

1 个答案:

答案 0 :(得分:0)

希望我正在将你的django架构规范正确地翻译成原始的mysql:

SELECT user, retail_category, SUM(grand_total)
FROM Receipts
INNER JOIN Stores ON Receipts.store = Stores.id_store
INNER JOIN Franchises ON Stores.franchise = Franchises.id_franchise
GROUP BY user, retail_category;