如果表 1 中缺少记录,则 MySQL 查询将值插入表 2

标签 mysql

我想知道是否有一种简单的方法来执行此查询。我正在构建一个 API 来发送好友请求。

最终用户将向我发送他/她想要发送 frnd 请求的人的电子邮件 ID。我需要首先根据最终用户发送的电子邮件 ID 检查我的 user 表,并查明该电子邮件 ID 是否存在于我的 user 表中。

案例1:

电子邮件 ID 存在于 user 表中。然后,我需要选择该用户ASfriend_iduser_id。 然后将调用 api 的人的 user_idfriend_id 插入到 friend_request 中。每当调用 API 时,我就已经获得了调用 API 的用户的 user_id

情况2:

用户 表中缺少电子邮件 ID。我向该用户发送电子邮件邀请以注册该应用。

我正在尝试在一个语句中执行 case1 的 mysql 查询。我想知道这样的事情,

INSERT INTO friend_request (user_id, friend_id) VALUES (1,4) WHERE EXITS (SELECT * FROM user WHERE email='black@sheep.com');

但显然这不起作用并且存在语法错误,我知道如何实现这一点吗?

最佳答案

也许只是拼写错误?

退出=>存在

INSERT INTO friend_request (user_id, friend_id) VALUES (1,4) 
WHERE EXISTS (SELECT * FROM user WHERE email='black@sheep.com');

关于如果表 1 中缺少记录,则 MySQL 查询将值插入表 2,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34650059/

相关文章:

MySQL 表示 : Can't connect to MySQL server on '127.0.0.1' (4)

php - 登录后尝试查看用户名是否在数据库中?

AWS RDS 大型实例上的 MySQL 全文搜索速度极慢

php - 如何使用mysql查询在wordpress页面中显示帖子?

python - sqlalchemy 核心完整性错误

php - 如何删除 jsondecode 中的特定值

mysql - 如何从第三个关系表中获取总和

mysql - 两个查询优化

php - 关于重复键更新值;两次插入相同的值

mysql - 使用 where 子句删除重复项