Select 从基地开始的时间为 UNIX_TIMESTAMP(time) laravel 5

Select time from base as UNIX_TIMESTAMP(time) laravel 5

我在类型为 datetime 的基础字段中,它是 time 字段。我想从基础中获取所有元素并获取额外的 timeu 字段 - 它是 UNIX_TIMESTAMP(time)。我尝试通过添加 ->select('*','UNIXTIMESTAMP(time) AS timeu') 来做到这一点,但 Laravel 给我错误。我需要它在 ->keyBy() 中使用。我有下一个错误:

SQLSTATE[42S22]: Column not found: 1054 Unknown column 'UNIX_TIMESTAMP(time)' in 'field list' (SQL: select *, `UNIX_TIMESTAMP(time)` as `timeu` from `values` where UNIX_TIMESTAMP(time) <= 1429135199 and UNIX_TIMESTAMP(time) >= 1428444000 order by `id` asc)

我该如何解决?

Laravel 需要知道 UNIX_TIMESTAMP(time) as timeu 是 RAW SQL 表达式而不是列名:

->select('*', \DB::raw('UNIX_TIMESTAMP(time) AS timeu'))

或者:

->selectRaw('*, UNIX_TIMESTAMP(time) AS timeu')