第一次使用lavavel數(shù)據(jù)庫,在wenbamn admin中執(zhí)行查詢的方法,
select * from table where 1=1,
如何 在模型內(nèi) 設(shè)置別名? from table as *** ,不用查詢構(gòu)造器或者直接寫sql能否實現(xiàn)?
/**
* 執(zhí)行查詢
* @param array $where
* @param string|null $field
* @param string $order
* @return EloquentBuilder|QueryBuilder|Model
*/
protected function doSelect(array $where, string $field = null, string $order= 'desc'){
$model = $this->model;
foreach ($where as $column => $value) {
if (is_array($value)) {
if (in_array($value[0], ['>', '=', '<', '<>', 'like', 'not like'])) {
$model = $model->where($column, $value[0], $value[1]);
} elseif ($value[0] == 'in') {
$model = $model->whereIn($column, $value[1]);
} elseif ($value[0] == 'not in') {
$model = $model->whereNotIn($column, $value[1]);
} elseif ($value[0] == 'null') {
$model = $model->whereNull($column, $value[1]);
} elseif ($value[0] == 'not null') {
$model = $model->whereNotNull($column, $value[1]);
} else {
$model = $model->whereBetween($column, $value);
}
} else {
$model = $model->where($column, $value);
}
}
if ($field) {
$model = $model->orderBy($field, $order);
}
return $model;
}
除了下方這種,和 原生sql 如何在model內(nèi)設(shè)置?
DB::table('users as table1')->select(DB::raw('table1.id'))->get();
小白一枚,謝謝解答!