数据库
首页 > 数据库> > mysql – 表的DROP列,根据另一个表中的值

mysql – 表的DROP列,根据另一个表中的值

作者:互联网

我有桌子,

表A.

field1  | field2 | field3 | field4 | field5 

表B.

id    | field_names
--------------------
1       field2
2       field3

我必须从表A中删除field2和field3(表B中的字段名称).

是否有任何方法可以删除表B中的字段名称.我无法手动删除字段.

提前致谢

解决方法:

不知道为什么你需要这个.无论如何MySQL没有这样的功能.但如果你真的想这样做,执行以下查询并执行每一行.

SELECT CONCAT('ALTER TABLE TableA DROP ', field_names, ';') FROM TableB;

例如PHP,(省略所有错误检查)

$query = "SELECT CONCAT('ALTER TABLE TableA DROP ', field_names, ';') AS stmt FROM TableB;";

$result = mysqli_query($query);

while ($row = mysqli_fetch_assoc($result))
{
    mysqli_query($rows['stmt']);
}

标签:sql,mysql,alter-table
来源: https://codeday.me/bug/20190831/1774409.html