我的数据库中有两个表。一个表定义了我的类别,另一个表包括了我的条目。在我的输出中,我想显示正确类别中的条目
表1:
+----+-------+------------------+
| id | name | source_system_id |
+----+-------+------------------+
| 1 | Cat 1 | 1 |
| 2 | Cat 2 | 1 |
| 3 | Cat 3 | 1 |
| 4 | Cat 4 | 1 |
+----+-------+------------------+
表2:
+---------+---------+------+----------+--------+
| SEGMENT | FIELD | LENG | DATATYPE | REF_ID |
+---------+---------+------+----------+--------+
| Entry 1 | Field 1 | 12 | VARCHAR | 1 |
| Entry 2 | Field 2 | 15 | VARCHAR | 1 |
| Entry 3 | Field 3 | 18 | VARCHAR | 3 |
| Entry 4 | Field 4 | 18 | VARCHAR | 4 |
+---------+---------+------+----------+--------+
输出应如下所示:
+---------+-------+---------+---------+
| Cat 1 | Cat 2 | Cat 3 | Cat 4 |
+---------+-------+---------+---------+
| Entry 1 | | | |
| Entry 2 | | | |
| | | Entry 3 | |
| | | | Entry 4 |
+---------+-------+---------+---------+
因此,表1中的id
和表2中的ref_id
是相互引用的。我无法执行JOIN语句,因为表二只是一个临时表。无论如何,我尝试获取所有有效的数据,然后如上所示显示它们。这是我的代码:
if(mysqli_num_rows($sqlCheckReference) > 0) {
$getAllSAPModules = $db_conn->getRows('dwh_metamasterdata','global_source_modules',array('where'=>array('source_system_id'=>1),'return_type'=>'all'));
if(!empty($getAllSAPModules)) {
print "<div class='row'>";
foreach ($getAllSAPModules as $sortedModule) {
print "<div class='col-md-2 col-xs-12 col-lg-2'>";
print "".$sortedModule["name"]."";
while ($res = mysqli_fetch_array($sqlCheckReference)) {
if ($res["REF_ID"]==$sortedModule["id"]) {
print "<tr>";
print "<td>".$res["SEGMENT"]."</td>";
print "</tr>";
}
}
print "</div'>";
}
print "</div>";
}
}
我从表中收到了所有信息,到目前为止,该信息仍然有效,但是我的代码似乎有误,因为未显示条目,具体取决于它们的REF_ID=id
有人可以帮我解决我在这里做错的事情吗?
编辑:
根据此处的要求,我从$getAllSAPModules
输出的var_dump:
array(6) {
[0]=>
array(6) {
["id"]=>
string(1) "1"
[0]=>
string(1) "1"
["name"]=>
string(22) "Cat 1"
[1]=>
string(22) "Cat 1"
["source_system_id"]=>
string(1) "1"
[2]=>
string(1) "1"
}
[1]=>
array(6) {
["id"]=>
string(1) "2"
[0]=>
string(1) "2"
["name"]=>
string(23) "Cat 2"
[1]=>
string(23) "Cat 2"
["source_system_id"]=>
string(1) "1"
[2]=>
string(1) "1"
}
[2]=>
array(6) {
["id"]=>
string(1) "3"
[0]=>
string(1) "3"
["name"]=>
string(19) "Cat 3"
[1]=>
string(19) "Cat 3"
["source_system_id"]=>
string(1) "1"
[2]=>
string(1) "1"
}
[3]=>
array(6) {
["id"]=>
string(1) "4"
[0]=>
string(1) "4"
["name"]=>
string(18) "Cat 4"
[1]=>
string(18) "Cat 4"
["source_system_id"]=>
string(1) "1"
[2]=>
string(1) "1"
}
}