Mysql SQL SELECT案例与Where From循环值

Mysql SQL SELECT案例与Where From循环值,mysql,while-loop,conditional-statements,case,where-clause,Mysql,While Loop,Conditional Statements,Case,Where Clause,我有两张桌子: 表名称事务和明细客户 事务表字段为idtrans和idcust 详细客户字段为idcust和custname 我的php语法有问题,我想从值删除中选择带有条件的表,下面是我的代码: if ($conn->connect_error) { die("Connection failed: " . $conn->connect_error); } $sql="select * from transaction";

我有两张桌子: 表名称事务和明细客户

事务表字段为idtrans和idcust

详细客户字段为idcust和custname

我的php语法有问题,我想从值删除中选择带有条件的表,下面是我的代码:

if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
    }
    $sql="select * from transaction";
    $result = $conn->query($sql);
    if ($result->num_rows > 0) {
    while($row = $result->fetch_assoc()) {
    $sqlid="select * from detailcust where idcust='$row[idcust]')";
        $resultid= $conn->query($sqlid);
        if ($resultid->num_rows > 0){
        while ($rowid= mysqli_fetch_array($resultid)){
            $custname=$rowid["custname"];
    echo $custname;
    }
结果名称总是第一个idcust值。

您似乎想要至少有一个事务的客户名称。如果是这样,就不需要循环和多个查询。只需一个查询即可获得所需的结果:

select c.*
from detailcust c
where exists (select 1 from transaction t where t.idcust = c.idcust)