Как написать этот запрос в CodeIgniterновообращенный следующий MySQL запрос в CodeIgniter
SELECT U.username,U.user_id
FROM storylikes S, user U
WHERE U.user_id=S.user_id_fk AND S.user_id_fk='$id'
Как написать этот запрос в CodeIgniterновообращенный следующий MySQL запрос в CodeIgniter
SELECT U.username,U.user_id
FROM storylikes S, user U
WHERE U.user_id=S.user_id_fk AND S.user_id_fk='$id'
попробовать это:
$this->db->select('u.username, u.user_id');
db->where('u. user_id = s.user_id_fk');
$this->db->where('s.user_id_fk = '.$id);
$query = $this->db->get('storylikes s, user u');
использование $your_variable = $query->result();
результата
как сохранить этот результат запроса в переменной –
вы должны использовать присоединяется вместо этот запрос
$this->db->select('username,user_id');
$this->db->from('user');
$this->db->join('storylike','storylike.user_id_fk = user.user_id');
$this->db->where('storylike.user_id','$id');
, пока загружается помощник дб ... Вам не нужно делать ничего особенного
$query = $this->db->query('SELECT U.username,U.user_id FROM storylikes S, user U WHERE U.user_id=S.user_id_fk AND S.user_id_fk=$id);
Использование декартову (перекрестное соединение), делая FROM с 2 таблицами может вызвать некоторые недисциплинированных результаты, если не используется «правильно»
Я полагаю, что если вы пытаетесь просто присоединиться таблицы вместе ваш SQL должен быть
SELECT U.username,U.user_id
FROM storylikes S, user U
INNER JOIN user U ON S.user_id = U.user_id_fk
WHERE S.user_id_fk=$id
CI QueryBuilder для этого было бы:
$query = $this->db->select('U.username,U.user_id')
->join('user U', 'S.user_id = U.user_id_fk', 'inner')
->where('S.user_id', $id)
->get('user U');
Использование правильного соединения для правильных требований является ключевым;
Есть и другие доступные соединения, но это основы.
Пожалуйста, добавьте еще несколько контекстов и то, что вы уже пробовали. – ppasler