#1064嵌套查询语句中的MySql错误

时间:2014-05-05 17:33:32

标签: mysql sql phpmyadmin

以下是我正在使用的嵌套查询:

insert into ( select dbtable from profiles where ( email = 'blah@test.com' ) ) values ( null, null, 'blah@test.com', 'testing' )

SELECT查询将获取表名,以便运行INSERT查询但是我收到了#1064错误。

我得到另一个错误"#1103 - 表名不正确"如果我使用这样的反向标记:

insert into `( select dbtable from profiles where ( email = 'blah@test.com' ) )` values ( null, null, 'blah@test.com', 'testing' )

我尝试并搜索了这个,但我仍然被困在这里。有人可以帮忙吗?

很抱歉,如果这是一个简单的问题,因为我是新手。

1 个答案:

答案 0 :(得分:0)

select dbtable from profiles where ( email = 'blah@test.com' ) into @tableName;
set @queryy = CONCAT(CONCAT('INSERT INTO ', @tableName), ' values ( null, null, \'blah@test.com\', \'testing\' )');

prepare myQuery from @queryy;
execute myQuery;
deallocate prepare myQuery;

我认为它可以帮助您解决问题。