Я использую codeigniter 2 в своем проекте, и у меня есть проблема, которая, надеюсь, поможет вам в ее решении.
У меня есть две таблицы mysql: " авторы " и " статьи ", где отношение "один автор ко многим статьям". Мне нужно получить авторов "от ' авторов ", которые уже имеют активные статьи в " статьях ".
примечание , что в таблице статей у меня есть столбец с именем "status_id", который устанавливается в 1, если статья активна, или в 0, если приостановлено. и у меня в таблице " авторы " есть запись "hors_categories_id ".
Я пытался сделать это с помощью этого кода
$this->db->select('authors.name,authors.about,authors.author_thumbnail,authors.authors_categories_id,authors.user_id,authors.status_id,authors.id AS auth_id')
->from('authors')
->join('articles', 'authors.id = articles.author_id')
->where('authors.authors_categories_id',$AuthCategory)
->where('articles.status_id', 1)
->order_by("auth_id", "desc")
->limit($limit, $start);
$Res = $this->db->get();
$data['Authors'] = array();
foreach($Res->result() as $R)
{
$data['Authors'][] = $R;
}
print_r($data['Authors']);
Моя проблема в том, что код приводит меня к дублированию авторов. например , если у автора есть 5 статей в таблице 'статей', результат будет 5 записей для одного автора, а мне нужно просмотреть каждого автора только один раз, а не более .
Мне нужен код для генерации записей по количеству авторов, а не статей.
спасибо.