我需要将一些值从一个表INSERT(不是UPDATE)转换为其他
我就是这样做的:
INSERT INTO `users`(`id`) VALUES(('SELECT `id` FROM `clients` WHERE `phone_number`="+115522225500"))
但显示错误
我该如何纠正呢
干杯!
答案 0 :(得分:1)
正如Elliott Frisch所说,您需要分享错误消息。 (只有这样,任何人都可以确切地知道如何帮助你) 但基本上我认为您的查询可能有任何或所有这些可能的错误:
如果同一电话号码出现在多个记录中,则(' SELECT
id
FROMclients
WHEREphone_number
=" + 115522225500")
可能不止一个值,这假设它不是唯一列。您可以考虑使用(SELECT TOP 1 ID from clients....
答案 1 :(得分:0)
只需使用insert . . . select
:
INSERT INTO users(id)
SELECT id
FROM clients
WHERE phone_number = '115522225500';
请注意,电话号码通常是字符串,因此值应该在其周围加上单引号。