我有一个相当复杂的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语句组合以在单个选择语句中检索我需要的所有信息来解决它...
选择?