为了减少下载数据的大小,我想用代码替换数据的一些重复部分,然后在客户端上重新转换。
替换是在mysql查询中完成还是在PHP之后完成,还是重要?
在mysql中:
SELECT IF(SUM(val)=16,0,CONCAT("[",GROUP_CONCAT(TRIM(TRAILING ".000" FROM val) ORDER BY itm),"]"))
PHP:
$q=str_replace("1.000","1",$q);
$q=str_replace("[1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1]","0",$q);
答案 0 :(得分:2)
MySQL将比PHP快,并且会让你的代码更清洁。
答案 1 :(得分:2)
无论您选择何种方式,都不要内联。将它包含在函数中,这样您就可以重用和操作逻辑而不会破坏实际查询,反之亦然。
我会使用我对PHP代码的投票,因为当你明天切换到somethingElseDB时,你不需要弄清楚在完全不同的SQL语法上实现相同的逻辑。我认为PHP实现也更容易阅读。