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')
我在类型为 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')