Как выбрать все кампании, кроме (уже понравилось) [дубликат]Php

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Как выбрать все кампании, кроме (уже понравилось) [дубликат]

Сообщение Anonymous »

как выбрать все кампании кроме (уже понравившиеся) с помощью codeigniter v3
Таблицы:
кампании (id, user_id, post_id, post_url, количество, статус)
понравившиеся_посты (id, user_id, post_id, статус)
ожидаемый SQL-запрос
SELECT
*
FROM
`campaigns`
WHERE post_id NOT IN
(SELECT
post_id
FROM
`liked_posts`
WHERE user_id like '-NgAN8gGt-9Kna5QKJvJ'
AND status = 1)

мой код (не работает + есть 2 отдельных запроса)


$_client = $params['client'] ;
$already_liked = $this->model->get (" GROUP_CONCAT(CONCAT('''', post_id, '''' )) as liked", $this->tb_liked_posts, ['user_id'=> $_client->user_id,'status'=>'1' ]);
if( $already_liked->liked ){
$already_liked_list = $already_liked->liked;
}else{
$already_liked_list = '' ;
}

$already_liked = explode(",",$already_liked_list) ;

$this->db->select(self::entity_fields['campaigns']);
$this->db->select('u.*');
$this->db->from($this->tb_campaigns . ' cmp');
$this->db->join($this->tb_users." u", "u.user_id = cmp.user_id", 'left');

$this->db->where_not_in('cmp.post_id', $already_liked );
$query = $this->db->get();
$campaign_list = $query->result();



Подробнее здесь: https://stackoverflow.com/questions/782 ... eady-liked
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»