从纯编码最佳实践的角度来看,将推荐什么作为中型开发人员团队的标准?
返回一个顺序数组:
function get_results($filter) {
$query = "SELECT SQL_CALC_FOUND_ROWS, * FROM ...";
$results = ...
$total = ...
return array($results, $total);
}
Run Code Online (Sandbox Code Playgroud)
返回一个关联数组:
function get_results($filter) {
$query = "SELECT SQL_CALC_FOUND_ROWS, * FROM ...";
$results = ...
$total = ...
return array(
'resuts' => $results,
'total' => $total
);
}
Run Code Online (Sandbox Code Playgroud)
返回单个结果并通过引用分配第二个结果(?!):
function get_results($filter, &$count = null) {
$query = "SELECT SQL_CALC_FOUND_ROWS, * FROM ...";
$results = ...
$total = ...
$count = $total;
return $results;
}
Run Code Online (Sandbox Code Playgroud)
随意建议其他方法。
使用 MySQL 触发器在一个表和另一个表之间保持数据同步,甚至在数据更改时更新聚合/报告表的优点/缺点是什么?
汇总/报告表是指汇总其他表中存在的数据的表,例如:
tbl_user_location:
1 Mike New York
2 John London
3 Emily Paris
4 Jack New York
tbl_summary:
New York 2
London 1
Paris 1
Run Code Online (Sandbox Code Playgroud)
随着数据的实时变化tbl_user_location,摘要中的数据也会更新。
这种方法有哪些替代方案?
mysql triggers database-design stored-procedures mysql-routines