请参阅以下查询。
我想把它转换成codeIgniter活动记录。
SQL查询:$this->db->query("SELECT SUM(A.votes) as reputation from
(
SELECT reply.votes FROM reply where reply.user_id = $user_id
UNION ALL
SELECT thread.votes FROM thread where thread.user_id = $user_id
)AS A");
我如何在不使用$this->db->query()的情况下转换这个?
使用CodeIgniter查询的ActiveRecord样式会转义参数,但db->query()
和db->query()
默认不受SQL注入保护。
这就是为什么我要使用codeigniter活动记录来转换它。
找到解决问题的方法
使用ACTIVE RECORD
查询$this->db->select("SUM(A.votes) as reputation");
$this->db->from("(
SELECT reply.votes FROM reply where reply.user_id = $user_id
UNION ALL
SELECT thread.votes FROM thread where thread.user_id = $user_id) AS A");
$query = $this->db->get();