我有一个名为价格的列,具有表被调用产品的文本类型 最小方法无效:
Product::min('price')
价格栏如下 5000 , 90 , 70
“我希望Min的输出为70,但实际输出为5000”
我认为因为价格列是文本类型
答案 0 :(得分:2)
对于投射,您可以在$casts
模型中使用laravel模型成员Product
,
protected $casts = [
'price' => 'integer' // or float as per your values
];
然后检查Product::min("price")
的值。
如果您想通过查询来获取
$temp = Product::selectRaw("MIN(CAST(price AS UNSIGNED)) as price")->first();
echo $temp->price;
答案 1 :(得分:1)
您可以使用类型转换执行直接SQL查询
$results = DB::select('select MIN(CAST(price AS SIGNED)) from tablename');
答案 2 :(得分:1)
仅使用min函数,min函数将返回最小值。
public function __construct($url, User $user)
{
$this->user = $user;
$this->verifyUrl = $url;
}