我有两个联合表。现在我需要打印出一些列,但问题是我有Firms.Id和FirmsUnique.Id列。当我尝试 - >选择(“*”)时,kohana 3.2.0会抛出错误:“订单子句中的列'Id'不明确”
$firms = ORM::factory('firm')
->select("Firms.Id", "FirmsUnique.*")
->join("firmsunique")
->on("Firms.FirmUID", '=', 'FirmsUnique.Id')
->order_by('Id', 'ASC')
->where('ProjectId', '=', $projectid)
->group_by("FirmsUnique.FirmName")
->limit($pages->items_per_page)
->offset($pages->offset)->find_all();
如何取消选择列?或者我必须键入manualy我想要的所有列? ( - >选择(“Firms.Id”,“Firms.ProjectId”等))
答案 0 :(得分:1)
->order_by('Id', 'ASC')
->where('ProjectId', '=', $projectid)
到
->order_by('Firms.Id', 'ASC')
->where('Firms.ProjectId', '=', $projectid)
此外,您可以在调用echo $firms->compile(Database::instance());
方法之前使用find_all()
来检查您的查询,并尝试直接在MySQL中执行它以查找一些错误和错误。