php - 尝试制作某种类型的 IF mySQL 语句

标签 php mysql sql database

我正在尝试创建一个 SQL 语句,其中包含一种 IF 语句。这是我目前的声明:

$sql = "SELECT b.FrameNumber, b.BikeCode, p.FrameNumber 
        FROM BikeStock b LEFT JOIN Purchase p 
               on b.FrameNumber = p.FrameNumber 
        WHERE b.bikecode = '$bikecode'";

我想将上面的语句与下面的文本结合起来,但不确定如何。

如果 BikeStock 表中的 PurchaseID 值大于 0,它将选择不同的帧号。

非常感谢您的帮助,并提前致谢。

最佳答案

你应该

SELECT b.BikeCode, IF(b.PurchaseID > 0, 
        p.FrameNumber, b.FrameNumber) AS FrameNumber 
    FROM BikeStock b 
    LEFT JOIN Purchase p on b.FrameNumber = p.FrameNumber 
    WHERE b.bikecode = '$bikecode'

附言不要忘记为 SQL 注入(inject)转义 $bikecode

关于php - 尝试制作某种类型的 IF mySQL 语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13789370/

相关文章:

php - Laravel 动态单例绑定(bind)无法通过 Queue Worker 解析

javascript - URL 以谷歌在 Chrome 中的方式编码字符串

php - PHP中的三元运算符?

php - Mysql LIKE子句和字段中的分隔词

mysql - 当 WHERE 子句中存在唯一列时,使用 LIMIT 1 会很有用吗?

带数组的 PHP 更新语句

php - 基于数组顺序查询数据库/基于另一个数组的值对数组进行排序

php - foreach 循环内嵌套 while 循环的结果集结构

c# - 如何将 sql union 与连接查询一起使用

SQL Server : populate MAX(column) value with 0 for non existing rows