带有count的子查询后插入MYSQL

And*_*dre 4 mysql insert subquery nested-queries

我正在尝试将一些数据插入到表中,但仅在子查询COUNT> 0时.

这就是我到目前为止所拥有的.

INSERT INTO users_friends (userId, friendId) VALUES (77, 100) 
WHERE 
(SELECT COUNT(id) FROM users WHERE email = 'a@g.com') > 0
Run Code Online (Sandbox Code Playgroud)

两个查询都独立工作.

希望这应该是一个简单的修复.干杯

val*_*lex 5

SQLFiddle演示是否有记录'a@g.com'

SQLFiddle演示如果没有记录'a@g.com'

INSERT INTO users_friends (userId, friendId) 
SELECT 77, 100 
FROM users WHERE email = 'a@g.com' LIMIT 1;
Run Code Online (Sandbox Code Playgroud)

另一种方式是:

INSERT INTO users_friends (userId, friendId) 
SELECT 77, 100 
FROM dual
WHERE EXISTS
      ( SELECT * FROM users WHERE email = 'a@g.com' ) ;
Run Code Online (Sandbox Code Playgroud)