【发布时间】:2018-08-16 20:38:55
【问题描述】:
在 SQL Server 中有一个日期时间字段。不关心日期和关心时间部分。而插入它是上午 9 点 30 分,晚上 11 点 30 分。当我检索回来时,我使用 eloquent ORM find 方法返回为
1900-01-01 09:30:00.000
我只想从 eloquent 方法中检索相同格式的数据,例如上午 9 点 30 分
P.S : SQL Query 提供了正确的格式(但我需要以 Eloquent 的方式)
SELECT REPLACE(REPLACE(RIGHT('0'+LTRIM(RIGHT(CONVERT(varchar,endTime,100),7)),7),'AM',' AM'),'PM',' PM')
FROM servers
WHERE serverid = 12
结果为上午 9:30
【问题讨论】:
-
有人能解释一下为什么它得到了负分吗?我相信这是一个有效的问题,因为到目前为止还没有人遇到过。
-
如果 2012+ 可以使用 Format(endTime,'h:mm tt') 如果需要 09:30 使用 hh
-
你不应该在
select查询中这样做,这应该在表示层中完成。另外,如果您不关心日期,为什么要将其存储在datetime中?使用不同的数据类型来避免这个问题。 -
谢谢坦纳。它将在表示层中完成。只是对学习 Eloquent ORM 的好奇在这里问。
标签: sql sql-server laravel eloquent