【问题标题】:querying aggregate EAV records by month and multiple other fields按月和多个其他字段查询聚合 EAV 记录
【发布时间】:2019-01-30 02:32:40
【问题描述】:

我在实体-属性-值模型中设置了实体。这是在 Laravel 中。现在我需要运行一个报告,其中这些按用户定义的自定义字段(恰好是日期)的年份和月份以及另一个字段 'type'=(许多不同类型之一)分组。

我能想到的唯一解决方案是创建缓存 MySQL 表,这些表有点像物化视图,但通过模型更新(因为 MySQL 尚不支持物化视图),然后查询那些索引表。

还有其他我没有想到的方法可能对我有更好的帮助吗?

【问题讨论】:

    标签: mysql laravel entity-attribute-value materialized-views


    【解决方案1】:

    我只是按原样查询数据,然后使用客户端代码将行分组处理。

    实际上,对于需要在搜索、排序或分组中使用的属性,我不会使用 EAV。

    “任意自定义字段”和“数据模型”是反义词。

    【讨论】:

    • 谢谢。我的意思是“用户定义”而不是“任意”。改变了。那么对于需要搜索和分组的用户定义字段和实体,您会使用什么模型?
    • 有很多选择,每个都有自己的优缺点。请参阅我的演示文稿Extensible Data Modeling。但我的观点是,允许用户定义属性本质上是非关系的,并且打破了数据模型的概念。
    猜你喜欢
    • 2022-01-14
    • 2012-08-25
    • 1970-01-01
    • 2017-11-04
    • 2020-04-26
    • 1970-01-01
    • 1970-01-01
    • 2019-06-13
    • 1970-01-01
    相关资源
    最近更新 更多