我有一个基于竞争的应用程序,包括(比方说)10种饼干(饼干)和6种饮料。我正在使用MODx Revolution 2.2作为CMS。
参赛者基本上会指定他们喜欢哪种饮品并输入条形码(与饼干类型有关)。
我想将此作为统计信息在CMS中显示,但我认为查询每个COUNT()
的数据库是非常耗费资源的。
$biscuit1 = $modx->query("SELECT COUNT(*) FROM my_table WHERE barcode = '1234'");
$biscuit1 = $modx->fetch(PDO::FETCH_ASSOC);
$biscuit1 = $biscuit1[0];
所以我的问题是:
注意:我想过创建另一个统计表,我在一小时内在cron作业中运行这些查询。这会有帮助吗?
答案 0 :(得分:1)
COUNT(*)
并非所有资源密集型。如果将barcode
编入索引,它也会有所帮助。
您还可以在一个查询中获取所有条形码的数据,而不必运行16个查询,每个查询一个
$result = $modx->query("SELECT barcode,COUNT(*) FROM my_table GROUP by barcode");