高级mysqli查询语法



我有一个相当复杂的mysqli插入语句要做,因为我需要从另外两个表中收集数据,并且在一个语句中使用了PHP中可用的一些变量。

由于准备好的陈述的变量顺序,这使我感到困惑。 - 我只插入四个值,但是为了获取T1和T2的值,我也在Bind_param语句中也引用了这三个其他变量。

我应该居住在jobroleid,compandid,departmendID,concectiD,$ newjobroleid,$ newcompanyid,t1.id,t2.id

$addJobCompetencies = $con->prepare("
INSERT INTO jobRoleCompetencies (jobRoleID,companyID,departmentID,competenceID)
WITH t1 AS (SELECT id FROM departments WHERE companyID = ? AND department = ?), 
     t2 AS (SELECT id FROM competencies WHERE companyID = ?)
     SELECT ?,?,t1.id,t2.id FROM t1,t2");
if($addJobCompetencies) {
    $addJobCompetencies->bind_param('isiii', $newCompanyID,$row['department'],$newCompanyID,$newJobRoleID,$newCompanyID);
    $addJobCompetencies->execute();
} else {
    echo $con->error;   
}
$addJobCompetencies->free_result();

我遇到了语法错误,但我不是100%确定为什么。谁能帮忙?

谢谢Dan

我尚未解决此查询的语法问题,但是只需将Select语句组合以在单个选择语句中检索我需要的所有信息来解决它...

选择?

最新更新