LARLAVELE EQUEPOINT中的‘<>’和‘!=’有什么不同?

->where("payed",'<>',2)

这给了我空数组,但当我try 以下命令时:

->where(function ($query){
    $query->where('payed','!=',2)
        ->orWhere('payed',null);
})

它起作用了

->where("payed",'<>',2)

推荐答案

This '<>' and '!=' is "not equal" in terms of SQL.

但不同的是结果

  1. ->where("payed",'<>',2)中,您正在判断'payed'不等于2的记录.如果是'payed',则is null, it will not be returned是因为NULL不与2进行比较.

  2. 在第二个查询中,您将判断'payed'不等于2或'payed'为空的记录.这意味着it includes the records where 100 is null


因此,如果您希望在第一个查询中包含null个值,则必须使用

->where('payed', '<>', 2)->orWhereNull('payed')

Php相关问答推荐

PHP cUrl扩展与v8.2.12更新损坏

Laravel:从匹配的数组数据中获取记录

从WC会话变量更改WooCommerce checkout 托运方法成本

在内部API请求之后,在响应客户端之前,是否忘记了PHP中的Header()?

在WooCommerce我的帐户部分添加带有自定义链接的自定义菜单项

Apache只允许index.php-不从根目录工作

使用MySQLi使用连接字符串设置字符集

设置WordPress最近的帖子小部件按修改日期排序

PHP -将字符串拆分为两个相等的部分,但第二个字符串中的单词更多

Laravel Http::get not working on controller

无额外字段的Laravel同步

WooCommerce产品页面上没有产品详细信息

htaccess 配置提供静态文件和动态文件

将自定义字段添加到管理产品中 WooCommerce 3.2+ 中的快速编辑

如何在 PHP laravel 中将图像的透明背景转换为白色?

将 WooCommerce 0 销售价格替换为自定义文本,并保留常规价格删除线

当所有对象都属于同一类型时,我可以省略 PHP in_array() 中的 strict 参数吗?

使用 RSA 2048 公钥验证 RSA PKCS#1v1.5 SHA 256 签名

从 CSV 文件 seeder 数据库时的额外行

htaccess 无限循环问题