2017-07-19 196 views
0

我创建了一些查询,显示我在AD中发生的变化。字段列表中的MYSQL子查询

他们检查所有想要的字段,如姓氏,名字,位置,PhoneNumber等 如果这些字段中有变化,它会填充一个名为'changes'的表,插入被更改的列的字段名称,新价值和邮件的UID 即

Field | OldValue | NewValue 

LastName | Smith | Peterson 

查询应更新是在表中的新值“变化”指出,主表“用户”,但只有场。

$sql=$MySQLiconn->query("UPDATE users SET (select Field from changes WHERE id= .$del) = 
(select NewValue from changes WHERE id=".$del WHERE user.Mail = changes.Mail”;) 

事情是这样的事情甚至可以与MySQL?

回答

0

不幸的是,这是不可能的你的方式。您必须在UPDATE语句之前生成列名称。

你的情况会更好更快。

+0

所以我可以做一些在PHP网站上? 来设置一个变量,并获得字段名称到该变量,然后使用更新查询中的变量? – RobertS

+0

是的,你可以。 你必须从mysql中选择字段并保存到变量中。然后,你可以在你的UPDATE查询中使用它。 – MVG1984