Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Laravel在查询时从数据库的字符串中获取整数值_Php_Database_Laravel - Fatal编程技术网

Php Laravel在查询时从数据库的字符串中获取整数值

Php Laravel在查询时从数据库的字符串中获取整数值,php,database,laravel,Php,Database,Laravel,我在数据库中有一个名为“经验”的领域,它的值有5年或2年等。 现在我想搜索所有有2年到5年经验的用户。 我该怎么做? 我如何在字符串上应用一个范围,比如2年。您可以试试这个 DB::table('experience')->where(function ($query) use ($YOURVARIABLE) { $query->where('2years', '<=', $YOURVARIABLE); $query->where('5

我在数据库中有一个名为“经验”的领域,它的值有5年或2年等。 现在我想搜索所有有2年到5年经验的用户。 我该怎么做? 我如何在字符串上应用一个范围,比如2年。

您可以试试这个

  DB::table('experience')->where(function ($query) use ($YOURVARIABLE) {
        $query->where('2years', '<=', $YOURVARIABLE);
        $query->where('5years', '>=', $YOURVARIABLE);
    })->get();
DB::table('experience')->其中(函数($query)使用($YOURVARIABLE){
$query->where('2年','=',$YOURVARIABLE);
})->get();

首先,从年份数据中获取所有值,将它们存储在数组中。 然后从字符串中删除静态“Years”字,您将得到数字, 然后对其应用范围查询。 从表格中选择* 其中年份范围为“第一个值”和“第二个值”
按年份顺序描述

DB::table('experience')->whereBetween(您想要的)->get();你可以试试where-between,但是你能告诉我字符串在比较运算符上是如何处理的吗?在上面的例子中,我只是检查where条件使用where条件检查用户2到5年的经验,但是你不认为这会使查询变慢吗?