如果表中不存在针对 Admin_Id
的 Admin_User_Role_Id
值,我将尝试将我的值插入表中。可以插入吗!
我的表结构:
Admin_User_Id (FK)
Admin_User_Role_Id (FK)
Is_Enabled (boolean flag)
我尝试过查询,但没有成功
INSERT INTO role_association
SET Admin_User_Id=61, Admin_User_Role_Id=2, Is_Enabled=0
WHERE Admin_User_Role_Id
NOT IN
(SELECT Admin_User_Id, Admin_User_Role_Id FROM role_association)
我认为这是可能的,但我的逻辑是错误的。我应该如何管理这个查询才能成功工作!
最佳答案
INSERT 语法不能有 WHERE 子句。唯一一次您会发现 INSERT 有 WHERE 子句是当您使用 INSERT INTO...SELECT 语句时。
您可能会关心编程逻辑中的条件并编写一个简单的插入语句,然后根据您的逻辑使用此语句来插入记录。希望你明白我的意思。
关于mysql - 数据库 INSERT INTO SET ... WHERE(SELECT ...),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31980685/