标签: php mysql laravel caching laravel-5.1
需要这个概念的帮助/建议。我有一个非常复杂的流畅查询,根据用户过滤器拉取行。
我正在考虑将未经过滤的(只有连接,没有where / whereIns)查询缓存,然后以某种方式根据用户需要过滤缓存的查询。
每次表单过滤器更改时查询数据库的时间滞后2-3秒,所以我猜这可以表现得更好。
现在未过滤的查询大约是5k行,平均过滤的大小会带来500-1000行。
查询大约有25列,包含4个CONCATS,3个CASE语句和14个左侧语句。
这是对的吗?还有其他建议吗?
提前致谢!
ý
答案 0 :(得分:1)
也许你可以使用sql view。
或者您可以将过滤后的数据存储到另一个数据库表中。您可以自动使用trigger更新它。
顺便说一下,您可以使用sql从数据库表中快速过滤数据。
它就像dbcache,但你会控制它。