【问题标题】:SQL adding value to a List with SelectSQL 使用 Select 将值添加到列表
【发布时间】:2016-03-08 12:58:40
【问题描述】:

刚开始用 SQL 编程,但我的代码无法正常工作。

我想在我的表格语言中添加一行,表格语言有国家代码、语言名称和说该语言的人的百分比。

我看到另一篇帖子说我必须使用以下命令向我的列表中添加一个新值:

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

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

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

我只是不明白为什么我的代码不起作用,在 SQL 中将 select 命令用于 Insert 命令是否合法?

  • 我正在使用开源 Mondial 数据库

非常感谢您的帮助:)

【问题讨论】:

    标签: mysql sql select insert


    【解决方案1】:

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

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

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

    insert into language(Code, Name, Percentage)
    

    (或任何列)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-12-08
      • 2021-02-01
      • 1970-01-01
      • 2021-09-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多