Codeigniter mysql запрос, где не в подразделении [дублировать]Php

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

Сообщение Anonymous »

Я пытаюсь запустить следующий пример запроса в CodeIgniter < /p>

Код: Выделить всё

SELECT users.id, users.first_name, users.last_name, users.game_id
FROM users
WHERE users.id NOT IN
(SELECT banned.users_id FROM banned) AND game_id = '1'
ORDER BY last_name
Теперь это отлично работает в MySQL, однако я бы потребовал от следующих переменных (Game_id, '1', Last_Name), чтобы я мог сделать следующие


Код: Выделить всё

function get_where_custom_ordered_checked($col, $value, $order_by) {

$query = $this->db->query('
SELECT users.id, users.first_name, users.last_name, users.game_id
FROM users
WHERE users.id NOT IN
(SELECT banned.users_id FROM banned) AND $col = $value
ORDER BY $order_by
');
return $query;
}
< /code>
Очевидно, что это не работает, и запрос не распознает переменную. Как я бы достиг этого? Я также пытался использовать SET, как показано в моем исследовании, как следующее (но все же безрезультатно). 
[b] model [/b] 
function get_where_custom_ordered_checked($col, $value, $order_by) {
$query1 = 'SET @col = '$col', @value = '$value', @order_by = '$order_by'';
$this->db->query($query1);
$query2 = $this->db->query('
SELECT users.id, users.first_name, users.last_name, users.game_id
FROM users
WHERE users.id NOT IN
(SELECT players_phases.players_id FROM players_phases) AND @col = @value
ORDER BY @order_by
');
$query = $this->db->query($query2);
return $query;
}
Теперь теперь я попытался разрушить его, чтобы использовать класс активных записей CodeIgniter, но я не знаю, как включать в себя where_not_in () внутри (), тем более что мне нужно запустить не в запросе против второй таблицы - в отличие от примеров where_not_in (), показанные в активных записях Ci, где это противоречит той же таблице.>

Подробнее здесь: https://stackoverflow.com/questions/367 ... n-subquery
Ответить

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

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

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

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

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