如何返回 provision_id 列的结果,以便它们以每行的contracts.id 为条件?现在,我在每一行都得到相同的结果。想要的效果有点像 Excel 中的 VLookup。不确定如何使用 if else/sql 值在 PHP 中实现它。
相关代码:
<?php
global $wpdb;
$contents = $wpdb->get_results( $wpdb->prepare("SELECT id, name, remaining, contract_value FROM salaries"));
$contracts = $wpdb->get_results( $wpdb->prepare("SELECT contracts.id,source,provision,provision_id FROM contracts LEFT JOIN salaries ON contracts.id = salaries.id"));
?>
[table header stuff...]
foreach ($contents as $content) {
?>
<tr>
<td><?php echo $content->name ?></td>
<td><?php echo $content->remaining ?></td>
<td><?php echo $content->contract_value ?></td>
<td><?php foreach ($contracts as $contract) { echo $contract->provision_id }; ?>
</td>
电流输出
Name Remaining Contract_Value Provision_ID
-------------- --------------- -------------- --------------
Adam 100 300 A1 B1 C1
Bill 200 400 A1 B1 C1
Chad 200 400 A1 B1 C1
期望的输出
Name Remaining Contract_Value Provision_ID
-------------- --------------- -------------- --------------
Adam 100 300 A1
Bill 200 400 B1
Chad 200 400 C1
其中 A1,B1,C1 分别代表一个存储的数据单元格,该单元格对应于 column1 中的人名。我试图根据 Adam、Bill 和 Chad 的 ID 而不是名称来设置 provision_id 条件,但我不希望 ID 显示在 php 输出中。
本质上,我希望 PHP “查找” ID(又名成员 ID)并打印相应的 provision_id。在这种情况下,连接表格可能不起作用,因为我还从表格中拉出“工具提示”作为 A1、B1、C1 等的鼠标悬停效果。
附录 1 - 也就是正在发生的事情。我没有解释(为了保持简单)亚当比尔和乍得每个人都有不止一个供应 ID。Adam 有供应 ID:例如 A1、A2 和 A3。我试图避免下面的问题(GROUP_CONCAT 可以工作,但我不认为它可以,因为我对每个条款都有一个鼠标悬停工具提示)。
Name Remaining Contract_Value Provision_ID
-------------- --------------- -------------- --------------
Adam 100 300 A1
Adam 100 300 A2
Adam 100 300 A3
Bill 200 400 B1
Bill 200 400 B2
Chad 200 400 C1