我有两张桌子tbl_users(id,role_id,username)
,tbl_roles(id,role_name)
我必须通过从role_name 中获取与role_name = user 对应的id来更新role_id
用户名。tbl_users
为此,我做了两个查询,首先role_name="user"
从表的 where 中获取 role_id tbl_roles
,然后username="username"
在 tbl_users 中设置 role_id。
我的模型函数:- 我在这里做两个查询,并询问是否可以在一个查询中完成。
function dropModerator($username) {
$this->db->select('role_id');
$this->db->where('role_name',"User");
$role_id = $this->db->get('tbl_roles');
foreach($role_id->result() as $value)
$role = $value->role_id;
$sql = "UPDATE tbl_users SET role_id='$role' WHERE username='$username'";
return $this->db->query($sql);
}
同样,我想这样做是因为,这会使我的程序在运行时变慢,我想在单个查询中执行它以快速获得输出。