【发布时间】:2020-10-31 23:44:52
【问题描述】:
我有这个代码
$db = \Config\Database::connect();
$query = $db->query("select * from g WHERE g_status = '0' ORDER BY g_date ASC Limit 10;");
foreach ($query->getResult() as $g) {
$g_amount = $g->g_amount;
}
$query2 = $db->query("select * from g WHERE p_status = '0' ORDER BY p_date ASC Limit 10;");
foreach ($query2->getResult() as $p) {
$p_amount = $p->p_amount;
}
if($p_amount == $g_amount){
echo "do something";
}else{
echo "No match";
}
在这里,我试图在表 g 和表 p 之间进行匹配......如果表 g 中的任何列 == 表 p 中的任何列,无论列数如何,请执行某些操作,但它总是回显“不匹配”
如果表中的行数很多,我会设置“限制 10”,它只会与“排序”命令匹配前 10 行。
我需要一些帮助。
【问题讨论】:
-
如果您要在两个表之间进行匹配,为什么两个查询都只引用一个表?样本数据和期望的结果将阐明您想要做什么。
-
你的
foreach()没有意义。$p_amount将始终设置为迭代中的最后一项。
标签: php mysql sql select codeigniter-4