Я использую DataMapper ORM , и у меня есть следующие таблицы:
channel_providers
==================
id(pk)
name
channels
=========
id(pk)
channel_provider_id(fk)
name
sales_records
==============
id(pk)
channel_id(fk)
customer_name
salesman_name
amount
Я хотел бы отобразить все строки в таблицах sales_records , включая имя поставщика канала и имя канала, но сгруппировать по столбцу имени в таблице channel_providers .
В настоящее время у меня есть следующие коды:
$sales_records=new Sales_record();
$sales_records->get();
foreach($sales_records as $sales_record){
$sales_record->channel->get();
$sales_record->channel->channel_provider->get();
//now I can write codes to to echo all data, but the problem is that $sales_records is not grouped by the channel_providers.name column
}
Из примера group_by на этой странице: http://datamapper.wanwizard.eu/pages/get.html
Я знаю, что могу использовать функцию group_by
для столбца, который существует в таблице, с которой связан объект.
Но в моем случае столбец, который я хочу использовать group_by , не находится в отдельной таблице, как это можно сделать?
Большое спасибо всем вам.