Проблема в том, что метод select()
фактически выполняет запрос.
Ваш DB::connection('name')
вызов возвращает экземпляр
Illuminate\Database\ConnectionInterface
У этого есть метод выбора
/**
* Run a select statement against the database.
*
* @param string $query
* @param array $bindings
* @param bool $useReadPdo
* @return array
*/
public function select($query, $bindings = [], $useReadPdo = true);
Как вы можете видеть, тип возврата здесь array
.
Лучше всего позвонить по методу table()
, который вернет свободно создатель запросов.
/**
* Begin a fluent query against a database table.
*
* @param string $table
* @return \Illuminate\Database\Query\Builder
*/
public function table($table);
Итак, чтобы достичь того, чего вы хотите, ваш код должен выглядеть следующим образом.
return DB::connection($dbName)
->table($tableName)
->select(['*'])
->whereRaw($condition, $data)
->paginate($count);
Это вернет экземпляр
\Illuminate\Contracts\Pagination\LengthAwarePaginator
Я должен добавить, что paginate(1)
вернет нумерованный список из 1 записи. Если вам нужен только один, используйте first()
.
Надеюсь, это поможет.