【发布时间】:2019-02-22 13:08:43
【问题描述】:
我只是不知道我的代码有什么问题以及为什么会产生这个错误
SQLSTATE[23000]:完整性约束违规:1052 列“created_at”在 order 子句中不明确(SQL:select * from
processesinner joinbagsonprocesses.bag_id=bags.@ 987654327@ wherebags.type= Recyclable and date(processes.created_at) = 2018-09-18 00:00:00 order bycreated_atdesc limit 1) 这是我的代码
$bag = Bagcollect::join('bags', 'bagcollects.bag_id', '=', 'bags.id')
->select('bags.type')
->where('bagcollects.bag_id', $request->input('bag_id'))
->first();
//this query produce error
$processexist = Process::join('bags', 'processes.bag_id', '=', 'bags.id')
->where('bags.type', $bag->type)
->whereDate('processes.created_at', Carbon::today())
->latest()
->first();
【问题讨论】:
-
您已在多个表中创建了_at 列(此处正在加入这些表)。您需要指定特定的别名/表名才能使用特定的 created_at 列进行排序
-
歧义列错误只能指向
SELECT、WHERE、ON(加入时)、HAVING、GROUP BY子句添加到@MadhurBhaiya 的评论
标签: php mysql laravel laravel-5.5