我总共有6个不同的表,我选择然后在我做另一个选择之前插入到表中我想知道是否有一种方法可以跳过插入部分并且只是选择并组合所有表数据。选择和插入然后选择aproach的问题是当插入大约1k +记录时它变得非常慢。需要大约30秒到1分钟或更长时间
我正在尝试这样的事情
$sql = "select 1";
$statement = $conn->query($sql);
$rowset = $statement->fetchAll();
$sql1 = "select 2";
$statement1 = $conn->query($sql1);
$rowset1 = $statement1->fetchAll();
$combine = array_merge($rowset,$rowset1);
foreach ($combine as $key => $part) {
$sort[$key] = strtotime($part['date']);
}
array_multisort($sort, SORT_DESC, $combine);
答案 0 :(得分:3)
对我来说,似乎你在php中复制你可以在sql中做什么。 sql中的上述代码看起来像这样:
(select 1)
union all
(select 2)
order by date desc
您可能必须根据日期字段中的确切数据来调整order by子句。否则,上面的sql代码应该产生与php代码完全相同的结果。