Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/75.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将access查询转换为SQL Server 2012查询时出错_Sql_Sql Server_Ms Access - Fatal编程技术网

将access查询转换为SQL Server 2012查询时出错

将access查询转换为SQL Server 2012查询时出错,sql,sql-server,ms-access,Sql,Sql Server,Ms Access,我正在将Access 1010中的查询转换为SQL Server 2012。 以下是查询的一部分 Count(Stats.SessionNumber) AS TotalSessions, Sum(Stats.Duration) AS TotalDuration, Round([TotalDuration]/[TotalSessions],1) AS AverageDuration 我得到以下错误: 列名称“TotalDuration”无效。 列名称“TotalSessions”无效 Tota

我正在将Access 1010中的查询转换为SQL Server 2012。 以下是查询的一部分

Count(Stats.SessionNumber) AS TotalSessions, Sum(Stats.Duration) AS TotalDuration, 
Round([TotalDuration]/[TotalSessions],1) AS AverageDuration
我得到以下错误: 列名称“TotalDuration”无效。 列名称“TotalSessions”无效

TotalDuration和TotalSessions的别名是否需要在SQL Server中进行不同的处理 如果是这样,怎么办


谢谢在SQLServer中,您不能使用刚刚分配的别名。您要么需要使用子查询,要么重新使用
SUM
COUNT

重复使用:

Count(Stats.SessionNumber) AS TotalSessions, Sum(Stats.Duration) AS TotalDuration, 
Round(Sum(Stats.Duration)/Count(Stats.SessionNumber),1) AS AverageDuration
子查询:

SELECT TotalSessions, TotalDuration, Round(TotalDuration/TotalSessions,1) AS AverageDuration
FROM
(
  SELECT RCount(Stats.SessionNumber) AS TotalSessions, Sum(Stats.Duration) AS TotalDuration, 
  FROM yourTableName
 ) subquery

在SQLServer中,您不能处理刚刚分配的别名。您要么需要使用子查询,要么重新使用
SUM
COUNT

重复使用:

Count(Stats.SessionNumber) AS TotalSessions, Sum(Stats.Duration) AS TotalDuration, 
Round(Sum(Stats.Duration)/Count(Stats.SessionNumber),1) AS AverageDuration
子查询:

SELECT TotalSessions, TotalDuration, Round(TotalDuration/TotalSessions,1) AS AverageDuration
FROM
(
  SELECT RCount(Stats.SessionNumber) AS TotalSessions, Sum(Stats.Duration) AS TotalDuration, 
  FROM yourTableName
 ) subquery

在SQLServer中,您不能处理刚刚分配的别名。您要么需要使用子查询,要么重新使用
SUM
COUNT

重复使用:

Count(Stats.SessionNumber) AS TotalSessions, Sum(Stats.Duration) AS TotalDuration, 
Round(Sum(Stats.Duration)/Count(Stats.SessionNumber),1) AS AverageDuration
子查询:

SELECT TotalSessions, TotalDuration, Round(TotalDuration/TotalSessions,1) AS AverageDuration
FROM
(
  SELECT RCount(Stats.SessionNumber) AS TotalSessions, Sum(Stats.Duration) AS TotalDuration, 
  FROM yourTableName
 ) subquery

在SQLServer中,您不能处理刚刚分配的别名。您要么需要使用子查询,要么重新使用
SUM
COUNT

重复使用:

Count(Stats.SessionNumber) AS TotalSessions, Sum(Stats.Duration) AS TotalDuration, 
Round(Sum(Stats.Duration)/Count(Stats.SessionNumber),1) AS AverageDuration
子查询:

SELECT TotalSessions, TotalDuration, Round(TotalDuration/TotalSessions,1) AS AverageDuration
FROM
(
  SELECT RCount(Stats.SessionNumber) AS TotalSessions, Sum(Stats.Duration) AS TotalDuration, 
  FROM yourTableName
 ) subquery

你可以这样做

SELECT  TotalSessions
       ,TotalDuration
       ,Round([TotalDuration]/[TotalSessions],1) AS AverageDuration
FROM (
        SELECT  Count([Stats].SessionNumber) AS TotalSessions
               , SUM([Stats].Duration) AS TotalDuration
        FROM Table_Name
     ) A

你可以这样做

SELECT  TotalSessions
       ,TotalDuration
       ,Round([TotalDuration]/[TotalSessions],1) AS AverageDuration
FROM (
        SELECT  Count([Stats].SessionNumber) AS TotalSessions
               , SUM([Stats].Duration) AS TotalDuration
        FROM Table_Name
     ) A

你可以这样做

SELECT  TotalSessions
       ,TotalDuration
       ,Round([TotalDuration]/[TotalSessions],1) AS AverageDuration
FROM (
        SELECT  Count([Stats].SessionNumber) AS TotalSessions
               , SUM([Stats].Duration) AS TotalDuration
        FROM Table_Name
     ) A

你可以这样做

SELECT  TotalSessions
       ,TotalDuration
       ,Round([TotalDuration]/[TotalSessions],1) AS AverageDuration
FROM (
        SELECT  Count([Stats].SessionNumber) AS TotalSessions
               , SUM([Stats].Duration) AS TotalDuration
        FROM Table_Name
     ) A