SQLSTATE [23000]:违反完整性约束:1052 order子句中的列“ created_at”不明确,Laravel 5.5

时间:2018-09-18 13:19:26

标签: php mysql laravel laravel-5.5

我只是不知道我的代码出了什么问题以及为什么会产生此错误

  

SQLSTATE [23000]:违反完整性约束:1052 order子句中的列'created_at'不明确(SQL: public static T some_function<T>(T out_put_object /*declare as Output object*/) { return out_put_object; } processes内部联接bags的select *。{{1 }} = processesbag_id其中bagsid =可回收和日期(bagstype)= 2018-09-18 00 :00:00按processes降序限制1)排序,这是我的代码

created_at

2 个答案:

答案 0 :(得分:3)

您需要在Public Function ifTableExists(tblName As String) As Boolean If DCount("[Name]", "MSysObjects", "[Name] = '" & tblName & "'") = 1 Then ifTableExists = True End If End Function 中指定整列。 latest()或使用自定义orderBy代替使用latest('process.created_at')

答案 1 :(得分:0)

那是因为您要从两个表中查询“ created_at”列。您必须指定所需的列,例如:

$processexist = Process::join('bags', 'processes.bag_id', '=', 'bags.id')
        ->select('bags.column1', 'bags.columns2')
        ->where('bags.type', $bag->type)
        ->whereDate('processes.created_at', Carbon::today())
        ->latest()
        ->first();