我需要将一些值从一个表插入(而不是更新)到另一个表
我就是这样做的:
INSERT INTO `users`(`id`) VALUES(('SELECT `id` FROM `clients` WHERE `phone_number`="+115522225500"))
但是显示错误
我该如何纠正
干杯!
最佳答案
正如 Elliott Frisch 所说,您需要分享错误消息。 (只有这样别人才能准确地知道如何帮助你) 但基本上我认为您的查询可能存在任何或所有这些可能的错误:
- 查询中存在不必要的单引号。删除所有单引号,并将电话号码两边的双引号替换为单引号
- 这部分的返回值(当然是在处理了上面的(1)之后)
('SELECT
id
FROMclients
WHEREphone_number
="+115522225500")
如果同一电话号码有可能出现在多个记录中,则可能有多个值,这是假设它不是唯一列。您可以考虑使用 (从客户中选择前 1 个 ID....
- select 查询返回 null,但 Users 中的列 ID 不允许为 null。
关于mysql - 如何插入其他表中的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44620189/