繁体   English   中英

从基准中选择时间作为UNIX_TIMESTAMP(time)laravel 5

[英]Select time from base as UNIX_TIMESTAMP(time) laravel 5

我在类型为datetime基本字段中有time字段。 我想从base获取所有元素,并获取其他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')

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM