mysql - 使用 select 语句插入 MySQL 表

标签 mysql sql

我的 MySQL 表有 3 列和 10 行:

ID     NAME     ParentID
1    Parent #1    NULL
2    Child #1      1
3    Child #1      1 
4    Child #1      1
5    Child #1      2
6    Child #1      2
7    Child #1      3
8    Child #1      3
9    Child #1      3
10   Child #1      3

在前端添加新元素后,我只得到这个新元素所属的父元素的ID。

让我们看例子。我想将新元素添加到具有 ID 等于 3ParentIDChild #1等于 1

从前端,我只得到 ID 值(例如上面示例中的 3)。当我想将新元素插入表中时,我需要将此元素设置为正确的 ParentID。我应该使用什么查询来实现这一目标?请查看我的以下查询:

INSERT INTO `tree` (`ID`, `Name`, `ParentID`) 
VALUES (11, "The new element", "and here I'd like to give this new element the ParentID of the element with ID equals to 3");

最佳答案

您可以使用 insert select 语句执行此操作:

insert into `tree`(`ID`, `Name`, `ParentID`)
select 11, "Inserted Element", `ParentID`
from `tree` where `ID` = 3

关于mysql - 使用 select 语句插入 MySQL 表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29865038/

相关文章:

MySQL - 独特的电子邮件,拥有最多货币的用户

php - 如何在另一个网站上显示Liferay数据库中存储的数据?

php - 我的数据库未保存在我的 SQL WAMP 服务器中形成的表中

php - 检查 mysql 行是否不在数组中

PHP fatal error : Uncaught exception 'PDOException' with message 'SQLSTATE[42000]

mysql - 如何使用 GORM 获得明显的结果

mysql - 查询连接同表错误

mysql - SQL 连接具有重复条目的多个表和 count() group by

mysql - 是否可以使用不同的排序规则(每行)或在 MySQL 中添加您自己的排序规则?

java - MySQL/SQL 增加一列