信息
我目前正在制作一个历史/日志页面,该页面将显示用户在我的网站上的付款历史。
这两个表是tasks
和payouts
tasks
是一张表,里面有用户可以完成并赚钱的任务。我使用的返回的列是tasks.title
,tasks.payment
和tasks.timestamp
payouts
是一个在用户支付收入时保存信息的表格。我使用的返回的列是payouts.processor
,payouts.amount
和payouts.timestamp
问题
我需要运行这两个查询,合并它们(可能使用类型字段,以便在输出上使用 foreach 时可以轻松地以不同方式显示它们),然后按时间戳 DESC 排序。
试图
我唯一的尝试没有结果,我所做的只是运行两个查询,然后使用array_push
which 没有在数组末尾添加任何内容。
问题
在添加一个名为的字段时合并两个查询结果的最佳方法是什么,LOG_TYPE
所以在输出时我可以做这样的事情
foreach($data as $row){
if($row['LOG_TYPE'] == 1){
// Display Payout
} else {
// Display Task
}
}
结论
任何问题都将尽快得到答复,任何修改都将显示在下方。谢谢你。
编辑
根据要求,这是我正在使用的两个查询。
$STH = $this->database->prepare('SELECT * FROM tasks WHERE completed_by = :userid ORDER BY timestamp DESC');
$STH->execute(array(':userid' => $user));
$data = $STH->fetchAll();
$STH = $this->database->prepare('SELECT * FROM payouts WHERE user = :userid ');
$STH->execute(array(':userid' => $user));
$payouts = $STH->fetchAll();