Php 拉威尔口若悬河,没有得到结果

Php 拉威尔口若悬河,没有得到结果,php,laravel,eloquent,Php,Laravel,Eloquent,我有一个laravel项目,我看不出哪里有bug 我有一个产品表,其中有一个“低库存警告”整型字段和一个“单位库存”整型字段 我想得到的产品的单位库存量小于低库存量\u警告量,因此我 $stock_warning = Product::whereRaw('units_stock <= low_stock_warning') ->select('id') ->get(); 编辑2: 这是数据库结构: -------------- DEVELOPMENT ENVI

我有一个laravel项目,我看不出哪里有bug

我有一个产品表,其中有一个“低库存警告”整型字段和一个“单位库存”整型字段

我想得到的产品的单位库存量小于低库存量\u警告量,因此我

$stock_warning = Product::whereRaw('units_stock <= low_stock_warning')
    ->select('id')
    ->get();
编辑2: 这是数据库结构:

--------------
DEVELOPMENT ENVIRONMENT
--------------
+-----------------------+------------------+------+-----+---------+----------------+
| Field                 | Type             | Null | Key | Default | Extra          |
+-----------------------+------------------+------+-----+---------+----------------+
| id                    | int(11) unsigned | NO   | PRI | NULL    | auto_increment |
| productdescriptioneng | text             | YES  |     | NULL    |                |
| units_stock           | int(11)          | YES  |     | NULL    |                |
| low_stock_warning     | int(11)          | YES  |     | NULL    |                |
+-----------------------+------------------+------+-----+---------+----------------+

--------------
PRODUCTION ENVIRONMENT
--------------
+-----------------------+------------------+------+-----+---------+----------------+
| Field                 | Type             | Null | Key | Default | Extra          |
+-----------------------+------------------+------+-----+---------+----------------+
| id                    | int(11) unsigned | NO   | PRI | NULL    | auto_increment |
| productdescriptioneng | text             | YES  |     | NULL    |                |
| units_stock           | int(11)          | YES  |     | NULL    |                |
| low_stock_warning     | int(11)          | YES  |     | NULL    |                |
+-----------------------+------------------+------+-----+---------+----------------+
发展: -服务器版本:5.7.21 MySQL社区服务器(GPL)

制作: -服务器版本:5.7.21-0ubuntu0.16.04.1(Ubuntu)

使用以下方法:


Product::whereColumn('units\u stock','验证数据库中的产品是否未被软删除(deleted\u at不为空);
如果它是软删除的,但您需要它们,请使用以下命令:

Product::whereColumn('units_stock', '<=', 'low_stock_warning')->withTrashed()->pluck('id');

Product::whereColumn('units_stock'),您可以使用whereColumn和或whereColumn来实现

Product::whereColumn('units_stock', '<', 'low_stock_warning')
         orWhereColumn('units_stock', '=', 'low_stock_warning')   
        ->pluck('id');

Product::whereColumn('units\u stock','谢谢你的回复,但它不起作用:((我没有投任何反对票)@Klian你不工作到底是什么意思?你有没有发现错误或什么?另外,请显示表中的真实数据。我曾试图添加答案,但@AlexeyMezenin先添加了答案。我之前在比较数据库表中的两列时遇到了同样的问题。应该可以工作:我添加了一个屏幕截图和laravelresult@Klian请出示t他从表和精确列类型中获取真实数据。刚刚用整数测试了此代码,效果很好。请向我们展示
产品的结构和数据
--------------
DEVELOPMENT ENVIRONMENT
--------------
+-----------------------+------------------+------+-----+---------+----------------+
| Field                 | Type             | Null | Key | Default | Extra          |
+-----------------------+------------------+------+-----+---------+----------------+
| id                    | int(11) unsigned | NO   | PRI | NULL    | auto_increment |
| productdescriptioneng | text             | YES  |     | NULL    |                |
| units_stock           | int(11)          | YES  |     | NULL    |                |
| low_stock_warning     | int(11)          | YES  |     | NULL    |                |
+-----------------------+------------------+------+-----+---------+----------------+

--------------
PRODUCTION ENVIRONMENT
--------------
+-----------------------+------------------+------+-----+---------+----------------+
| Field                 | Type             | Null | Key | Default | Extra          |
+-----------------------+------------------+------+-----+---------+----------------+
| id                    | int(11) unsigned | NO   | PRI | NULL    | auto_increment |
| productdescriptioneng | text             | YES  |     | NULL    |                |
| units_stock           | int(11)          | YES  |     | NULL    |                |
| low_stock_warning     | int(11)          | YES  |     | NULL    |                |
+-----------------------+------------------+------+-----+---------+----------------+
SHOW ENGINES;
+--------------------+---------+----------------------------------------------------------------+--------------+------+------------+
| Engine             | Support | Comment                                                        | Transactions | XA   | Savepoints |
+--------------------+---------+----------------------------------------------------------------+--------------+------+------------+
| MEMORY             | YES     | Hash based, stored in memory, useful for temporary tables      | NO           | NO   | NO         |
| MRG_MYISAM         | YES     | Collection of identical MyISAM tables                          | NO           | NO   | NO         |
| CSV                | YES     | CSV storage engine                                             | NO           | NO   | NO         |
| BLACKHOLE          | YES     | /dev/null storage engine (anything you write to it disappears) | NO           | NO   | NO         |
| MyISAM             | YES     | MyISAM storage engine                                          | NO           | NO   | NO         |
| PERFORMANCE_SCHEMA | YES     | Performance Schema                                             | NO           | NO   | NO         |
| ARCHIVE            | YES     | Archive storage engine                                         | NO           | NO   | NO         |
| InnoDB             | DEFAULT | Supports transactions, row-level locking, and foreign keys     | YES          | YES  | YES        |
| FEDERATED          | NO      | Federated MySQL storage engine                                 | NULL         | NULL | NULL       |
+--------------------+---------+----------------------------------------------------------------+--------------+------+------------+
SHOW ENGINES;
+--------------------+---------+----------------------------------------------------------------+--------------+------+------------+
| Engine             | Support | Comment                                                        | Transactions | XA   | Savepoints |
+--------------------+---------+----------------------------------------------------------------+--------------+------+------------+
| MyISAM             | YES     | MyISAM storage engine                                          | NO           | NO   | NO         |
| MRG_MYISAM         | YES     | Collection of identical MyISAM tables                          | NO           | NO   | NO         |
| CSV                | YES     | CSV storage engine                                             | NO           | NO   | NO         |
| BLACKHOLE          | YES     | /dev/null storage engine (anything you write to it disappears) | NO           | NO   | NO         |
| PERFORMANCE_SCHEMA | YES     | Performance Schema                                             | NO           | NO   | NO         |
| InnoDB             | DEFAULT | Supports transactions, row-level locking, and foreign keys     | YES          | YES  | YES        |
| ARCHIVE            | YES     | Archive storage engine                                         | NO           | NO   | NO         |
| MEMORY             | YES     | Hash based, stored in memory, useful for temporary tables      | NO           | NO   | NO         |
| FEDERATED          | NO      | Federated MySQL storage engine                                 | NULL         | NULL | NULL       |
+--------------------+---------+----------------------------------------------------------------+--------------+------+------------+
Product::whereColumn('units_stock', '<=', 'low_stock_warning')->pluck('id')
Product::whereColumn('units_stock', '<=', 'low_stock_warning')->withTrashed()->pluck('id');
Product::whereColumn('units_stock', '<', 'low_stock_warning')
         orWhereColumn('units_stock', '=', 'low_stock_warning')   
        ->pluck('id');