私は2つのテーブルを持っていますtbl_users(id,role_id,username)
、tbl_roles(id,role_name)
role_name から role_name = user に対応する ID をフェッチしてrole_id
、ユーザー名を更新する必要があります。tbl_users
このために、最初に where role_name="user"
from テーブルからrole_id を取得し、tbl_roles
次に tbl_users で role_id を設定する2 つのクエリを実行username="username"
しています。
私のモデル関数:- ここで 2 つのクエリを実行しており、これを 1 つのクエリで実行できるかどうかを尋ねています。
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);
}
繰り返しますが、実行中にプログラムの時間が遅くなり、出力を高速に取得するために単一のクエリで実行したいため、これを実行したいと考えています。