2016-03-08 35 views
0

刚刚开始使用SQL进行编程,但无法让我的代码正常工作。SQL将数值添加到具有选择的列表

我想添加一行到我的表语言中,表语言有一个国家代码,语言的名称和说这种语言的人的百分比。

我已经看到在另一个帖子里说我有一个新的价值添加到我的列表使用下面的命令:

INSERT into language 
Values(val1, val2, val3, val4) 

所以我想寻找到我的指定的表来选择我的语言土地码我查找国家“澳大利亚”的土地代码的国家(本文下面代码的第3行)。我只是输入语言的名称作为一个字符串(本文后面代码的第4行)。最后,我通过查看名为country的表中的人口来选择居住在澳大利亚的人数,如果name =“Astralia”(line下面的代码)的5

insert into language 
values(
select Code from country where Name = "Australia", 
"Light Warlpir", 
select 350/population from country where Name = "Australia") 

我只是不明白为什么我的代码不工作,这合法使用SELECT命令到一个SQL命令插入?

  • 我使用的是开源数据库蒙迪艾尔

非常感谢您的帮助:)

回答

2

子查询需要自己的括号内。但是,在这种情况下,最好是使用insert . . . select编写查询:

insert into language 
    select Code, 'Light Warlpir', 350/population 
    from country 
    where Name = 'Australia'; 

注意:您应该列出列的insert,所以它应该这样开始:

insert into language(Code, Name, Percentage) 

(或任何列是)。