字段列表中的 MYSQL 子查询

标签 mysql subquery

我创建了查询,显示 AD 中发生的更改。

他们会检查所有想要的字段,例如姓氏、名字、位置、电话号码等。 如果这些字段发生更改,它会填充名为“更改”的表,插入已更改列的字段名称、旧值和新值以及邮件作为 UID 即

Field | OldValue |  NewValue

LastName | Smith | Peterson

查询应更新主表“users”,但仅更新表“changes”中标注的字段为新值。

类似的东西

  $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 可以实现这样的功能吗?

最佳答案

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

对于您的情况来说,这会更好更快。

关于字段列表中的 MYSQL 子查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45185826/

相关文章:

MySQL - 正确的事件计数方法

php - 从 Mysql 中检索日期倒置

mysql - 如何从下一条记录中获取列值

mysql select true if...语句满足两个条件

mysql - 嵌套加入子查询和失败关联

pagination - 学说2 : Limiting with Left Joins/Pagination - Best Practice

MySQL子查询引用父查询中的字段

mysql - vb.net 如何创建一个变量来计算作为插入和更新进入的条目

mysql - 如何使用 clojure.java.jdbc 从 MySQL 数据库延迟流式传输结果?

sql - SQL喜欢与子查询