将以下 MySQL 查询转换为等效的 Codeigniter

Convert following MySQL query to Codeigniter equivalent

我是 CodeIgniter 的新手,我在将 MySQL 查询转换为 CodeIgniter 时遇到了一些问题。我想用另一个关系 table.

上的条件更新一个 table 中的记录

以下是我的MySQL查询

UPDATE `user` SET `securitytoken` = '71b9b5bc1094ee6eaeae8253e787d654'
WHERE `profileid` IN (SELECT pid FROM `profile` WHERE `email` = 'username@mail.com')    

这在 phpMyAdmin 中运行良好,但我希望将其转换为 codeigniter 更新查询。谁能帮我转换一下。

我在本地 WAMP 服务器中使用 CI v3.0.3。

提前致谢

我会做的是使用

对您的查询进行编码
$query = $this->db->query('YOUR QUERY HERE');

并使用转义功能来处理您的一两个输入值。

注意查询绑定,可能对您有用。

参见:http://www.codeigniter.com/user_guide/database/queries.html

我不会尝试使用 Active Records,您的 SQL 有点太复杂了。

试试这个

$query = $this->db->query("UPDATE `user` SET `securitytoken` = '71b9b5bc1094ee6eaeae8253e787d654'
WHERE `profileid` IN (SELECT pid FROM `profile` WHERE `email` = 'username@mail.com')");
$result = $query->result_array();
return $result;
$query=$this->db->query("SELECT pid FROM `profile` WHERE `email` = 'username@mail.com'")->row_array();

$this->db->set(`securitytoken`,'71b9b5bc1094ee6eaeae8253e787d654');
$this->db->where_in(`profileid`,$query['pid']);
$this->db->update('user');

//echo $this->db->last_query();
//exit;

试试这个...!