如何在SQL上创建if else语句?

时间:2016-09-29 12:07:09

标签: php html sql

嗨大家好我有关于如何在SQL上创建if else语句的问题, 它只在模态上显示rent.rent_status = 1的值,但如果rent.rent_status没有值,则模态不会显示,我该如何显示? 这是我的代码供您参考;

        $sql = "SELECT * FROM stall 
        LEFT JOIN tenant ON tenant.stall_id = stall.stall_id 
        LEFT JOIN rent ON rent.tenant_id = tenant.tenant_id
        WHERE rent.rent_status = 1 AND stall.stall_id = 1";

3 个答案:

答案 0 :(得分:0)

您正在使用width: 100%,然后在LEFT JOIN子句中撤消外部联接。您需要将条件移动到适当的WHERE子句:

ON

SELECT * FROM stall s LEFT JOIN tenant t ON t.stall_id = s.stall_id LEFT JOIN rent r ON r.tenant_id = t.tenant_id AND r.rent_status = 1 WHERE s.stall_id = 1; 保留第一个表中的所有行以及第二个表中的匹配行。如果没有匹配项,则第二个表中的列的值为LEFT JOINNULL条件导致WHERE条件失败。

答案 1 :(得分:0)

也许尝试使用与此类似的代码包装您的输出

while (mysqli_stmt_fetch($stmt)) {
    if(mysqli_stmt_num_rows($stmt) > 0){'output goes here'}
}

我不确定你是如何使用你的php的,这只是为了让你有一个成长的想法。

答案 2 :(得分:0)

    You don't need to use if..else just use or operator....   


SELECT * FROM stall 
                LEFT JOIN tenant ON tenant.stall_id = stall.stall_id 
                LEFT JOIN rent ON rent.tenant_id = tenant.tenant_id
                WHERE ((rent.rent_status = 1) OR (rent.rent_status IS NULL)) AND stall.stall_id = 1"