2017-02-28 61 views
0
INSERT INTO admin_userhistroy(sno,UserDetails_ID,UserMessage,SystemMessage_ID,insdate,STATUS,UserDetails_MsgTo_ID,License_Status) 
VALUES ('1',(SELECT DISTINCT id FROM admin_userdetails WHERE token = 'ABCDE1' LIMIT 1) 
,'New User is Created','4',cast(NOW() as string),'Y',cast((SELECT DISTINCT ID FROM admin_userdetails WHERE UserName = 'cangoadmin' AND token ='ABCDE1' LIMIT 1)as string) 
,NULL) 

以上是我的查询我已经在Mysql中执行了相同的查询,但是我无法在Impala中执行相同的查询,请有人帮我解决。不能添加另一个表使用Impala中的选择查询

我得到以下错误:

Subqueries not supported in the selected list

+0

你会得到什么错误? –

+0

所选列表中不支持的子查询 –

回答

1

尝试insert . . . select

INSERT INTO admin_userhistroy(sno,U serDetails_ID, UserMessage, SystemMessage_ID, insdate, STATUS, UserDetails_MsgTo_ID, License_Status) 
    SELECT '1', x.id, 'New User is Created', '4', 
      cast(NOW() as string), 'Y', y.id 
    FROM (SELECT id FROM admin_userdetails WHERE token = 'ABCDE1' LIMIT 1) x CROSS JOIN 
     (SELECT CAST(ID as string) as id FROM admin_userdetails WHERE UserName = 'cangoadmin' AND token ='ABCDE1' LIMIT 1) y; 

注意,你不需要在子查询select distinct

+0

谢谢Gordon,但在更改列后仍然有效,感谢您的帮助! –

相关问题