mysql - 查询:等于值不等于
问题描述
欢迎
我正在使用 Laravel 6.6.2,我想执行我的查询。如果我在 MySql-workbench 中执行我的查询(使用 sql fromat),那将起作用。我有以下问题,2个等于值不相等。
$myId = DB::table("masterTable")
->select("ass_group_user.group_pgr_id","group.pgr_id")
->leftJoin("user","user.status_flag","=","gen_client.status_flag")
->leftJoin("group","group.pgr_foreign_key","=","gen_client.id")
->leftJoin("ass_group_user","ass_group_user.user_id","=","user._id")
->Where("user.name","=","myName")
->Where("ass_group_user.group_pgr_id","=","group.pgr_id")
->get();
返回空数组。
如果我真的写它而不是 "Where("ass_group_user.group_pgr_id","=","group.pgr_id")"
->Where("ass_group_user.group_pgr_id","=",6)
->Where("group.pgr_id","=",6)
返回我想要的。
他们俩都是Int。
谢谢
解决方案
评论太长了。
如果两列都是整数,我看不出这是怎么发生的。但是,如果它们是字符串,您可能会遇到如下情况:
'06' = 6
'006' = 6
但:
'06' <> '006'
那是因为在数字和字符串的混合比较中,字符串被转换为数字。
推荐阅读
- php - 在 Netbeans 8.2 中调试期间为空调用堆栈
- javascript - javascript forEach() 函数如何在 mongodb shell 中迭代文档?
- python - 为什么代码会为我的两个变量提供 NameError?
- express - 快速路由器删除 - 404 未找到
- c++ - "+:", ":" 表示在 c++ 中的函数名之前
- c++ - 仅发布版本中的异常
- javascript - 滚动在移动视图上不起作用
- c# - 在 XAML 中无法访问 Helix SharpDx 工具包
- gnuplot - 在 GNU PLOT 中绘制一维轮廓
- laravel - “未定义的变量:书籍