如何在具有新行的同一表中插入不同的值


How to insert different values on the same table with new row?

INSERT INTO registration( name, email, username) values('eswar',(select email from registration),'manikandan')

正确的语法如下:

INSERT INTO registration( name, email, username) 
SELECT 'eswar', email, 'manikandan' FROM registration 

这将插入n行(注册表中的行数)。

若要对此进行筛选,请在select语句中添加一个约束。

INSERT INTO registration( name, email, username) 
SELECT 'eswar', email, 'manikandan' FROM registration WHERE email="x@yahoo.com"

您可以将常数值添加到SELECT语句中,而不是相反。

为什么不简单地使用更新查询

UPDATE registration SET name='eswar', username = 'manikandan' WHERE email = 'email@mail.com'