SELECT arrival from table1 -6ren">
gpt4 book ai didi

php - Laravel 5.5 - Eloquent - 从具有 "microseconds"字段的 MySQL 表中检索 "datetime(6)"

转载 作者:行者123 更新时间:2023-11-29 18:12:29 28 4
gpt4 key购买 nike

我在从 MySQL 5.7 表中检索 datetime(6) 字段时遇到问题。如果我直接从 mysql 客户端运行它,它可以工作:

mysql> SELECT arrival from table1 limit 1;
+----------------------------+
| arrival |
+----------------------------+
| 2016-06-22 16:52:06.260000 |
+----------------------------+
1 row in set (0.00 sec)

mysql>

但使用 Eloquent 从 Laravel 获取字段时,未报告微秒:

class Table1Model extends Model
{
protected $table = 'table1';
}

class Table1Controller extends Controller
{
public function index()
{
$data = Table1Model::first()->arrival;
dd($data);
}
}

// the output is: "2016-06-22 16:52:06"

这是一个 Eloquent 问题吗?如何获取微秒?

谢谢。

最佳答案

谢谢@apokryfos,确实...这是一个错误。

我使用 RAW 查询找到了一个简单的解决方法:

class Table1Model extends Model
{
protected $table = 'table1';
}

class Table1Controller extends Controller
{
public function index()
{
$query = Table1Model::select(
DB::raw(
CONVERT(CAST(arrival AS DATETIME(3)), CHAR)
)
);
$data = $query->get();
dd($data);
}
}
// the output is: "2016-06-22 16:52:06.260"

关于php - Laravel 5.5 - Eloquent - 从具有 "microseconds"字段的 MySQL 表中检索 "datetime(6)",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47286809/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com