开始SQL如何在同一行中求和和和拾取列?

开始SQL如何在同一行中求和和和拾取列?,sql,Sql,我今天刚开始在w3schools.com上学习SQL,我想确保我走上了正确的道路 我试图解决这个问题: 编写一条SQL语句,查找美国和墨西哥的人口总数(在此数据库中) 由于缺乏声誉,我不能在这里发布该表,但它非常简单。墨西哥的国家ID为2,美国ID为5 该表有4列:城市ID、姓名、国家ID和人口。您不知道有多少行。因此,基本上我需要将人口列相加,这些列具有相应的“2”或“5”国家ID 这就是我到目前为止所做的: //this statement gives result-set with all

我今天刚开始在w3schools.com上学习SQL,我想确保我走上了正确的道路

我试图解决这个问题:

编写一条SQL语句,查找美国和墨西哥的人口总数(在此数据库中)

由于缺乏声誉,我不能在这里发布该表,但它非常简单。墨西哥的国家ID为2,美国ID为5

该表有4列:城市ID、姓名、国家ID和人口。您不知道有多少行。因此,基本上我需要将人口列相加,这些列具有相应的“2”或“5”国家ID

这就是我到目前为止所做的:

//this statement gives result-set with all the cities in Mexico and the U.S.
SELECT * FROM City
WHERE country_id=’5’
OR country_id=’2’

//here, I don't know how to reference the result-set
SELECT SUM(population) FROM result-set
问题还在一句话中提到,有没有更简单的方法?谢谢。

您将
SUM(population)
表达式放入查询中

SELECT SUM(population) AS TotalPopulation
  FROM City
 WHERE country_id='5'
    OR country_id='2'
请注意,您也可以将
x=a或x=b
作为
x写入(a,b)
,即

 WHERE country_id in (5,2)
(如果country\u id为整数,您也可以删除引号,尽管不会失败)

您就快到了

SELECT Sum(population) FROM City
WHERE country_id=2
OR country_id=5

我假设国家id是整数,所以不需要演讲标记

@Scorpi0哇,谢谢大家没意识到我这么快就能得到答案!
SELECT Sum(population) FROM City
WHERE country_id=2
OR country_id=5