[英]Combining two SELECT SQL MS Access queries into a single query to make a table with two columns
对于 MS Access,我在 SQL 中有两个查询。 第一个是:
SELECT AVG(Salary) AS AverageSalary FROM Table WHERE EducationLevel = 1;
第二个查询:
SELECT AVG(Salary) AS AverageSalary2 FROM Table WHERE EducationLevel = 2;
如何将它们组合到一个查询中以生成包含两列的表,分别标记为“AverageSalary”和“AverageSalary2”?
可以一次查询完成。 考虑:
条件表达式:
SELECT Avg(IIf(EducationLevel = 1, Salary, Null)) AS AverageSalary,
Avg(IIf(EducationLevel = 2, Salary, Null)) AS AverageSalary2
FROM [Table];
或交叉表:
TRANSFORM Avg(Table.Salary) AS AvgOfSalary
SELECT 1 AS R
FROM [Table]
GROUP BY 1
PIVOT "AverageSalary" & [EducationLevel];
Below query, if the educational level field is a number field
SELECT Avg(Switch([EducationalLevel]=1,[salary])) AS AverageSalary,
Avg(Switch([EducationalLevel]=2,[salary])) AS AverageSalary2
FROM salary;
下面查询educationlevel字段是否为文本字段
SELECT Avg(Switch([EducationalLevel]="1",[salary])) AS AverageSalary,
Avg(Switch([EducationalLevel]="2",[salary])) AS AverageSalary2
FROM salary;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.