假设有多个标签:
我试图找出创建多个数据集的最佳方法
a - 一个数据集,然后使用PHP将其过滤为新的
b - 多次查询
行数可能从100到3000不等。 中间有没有最好的方法来做到这一点?
答案 0 :(得分:1)
我认为你可以使用这个简单的解决方案:
SELECT ..., IF( [{in-trash} condition], 1, 0) as in_trash, IF( [{to-approve} condition], 1, 0) as to_approve FROM ...
<?php $tabs = cache->get('tabs'); if( ! $tabs ) { $tabs = [ 'all' => [], 'in_trash' => [], 'to_approve' => [],]; $rows = mysql->query(); foreach( $rows as $row ) { $tabs ['all'] [] = $row; if( $row ['in_trash'] ) { $tabs ['in_trash'] [] = $row; } if( $row ['to_approve'] ) { $tabs ['to_approve'] [] = $row; } } cache->set('tabs', $tabs); } ?>