哪里是空值或不等于值不会在mysqli中返回记录

时间:2019-03-14 10:42:58

标签: php mysql

我正试图从两个表中获取记录。

1-令牌2-交易

两个表中都有相同的列user_id,令牌表具有transaction_id。我正在尝试获取与令牌有关的所有交易。我正在尝试

select sum(`amount`) as aggregate 
from `tokens` 
where `user_id` in (15, 713, 49, 58, 60) 
and exists 
    (select * 
    from `transactions` 
    where `tokens`.`transaction_id` = `transactions`.`id` 
    and (`custom` != 'BB' or `custom` is null)
    )

当我在查询中更改“ custom is not null之类的运算符时,我得到了记录,但是not意味着查询将显示'BB'的记录。

我已经对此进行了搜索,并从此thread

中找到了一个不错的句子
  

NULL无法使用比较运算符与任何值进行比较。 NULL = NULL为假。 Null不是值。 IS运算符专门用于处理NULL比较。

因此,在custom中,我只有一个值为BB,另一个值为NULL
我上面的查询不起作用。

有人可以指导我如何解决该问题吗?

0 个答案:

没有答案