平均功能(SQL Server)

时间:2015-08-07 14:36:33

标签: sql-server average

我刚刚开始尝试运行一些基本的SQL函数。我想做一般的功能(通过我查看过的每个网站)都应该这样:

SELECT AVG(column_name) FROM table_name

但那不适合我。它总是说AVG是一个无效的列名。

同样是一个额外的问题,在table_name格式的基本SELECT column_Name中,我总是要前进并先键入表名,然后返回并写入列名,否则SQL不会识别列。

任何帮助都将受到极大的赞赏。

2 个答案:

答案 0 :(得分:0)

如果您在数字列上尝试SELECT AVG(column_name) FROM table_name此查询,那么它应该可以正常工作。

对于第二个问题,如果没有输入表名,SQL如何识别列名?您可以安装Redgate SQL Toolbelt,它将有助于SQL Server中的IntelliSense。

答案 1 :(得分:0)

如果您正在运行Microsoft SQL Server,那么您应该能够复制以下代码并运行它。

DECLARE @TestTable TABLE (
  SomeDate date,
  SomeValue float
);

INSERT INTO @TestTable (SomeDate, SomeValue)
  VALUES ('20150801', 15.0),
  ('20150802', 11.0),
  ('20150803', 9.0),
  ('20150804', 10.5),
  ('20150805', 17.4),
  ('20150806', 21.6),
  ('20150807', 12.3),
  ('20150808', 15.9),
  ('20150809', 18.7),
  ('20150810', 7.6);

SELECT
  AVG(tt.SomeValue)
FROM @TestTable AS tt;

也许您可以更新代码并告诉我们您正在运行的SQL。如果average功能对您不起作用,那么您可能没有正确设置table,也许没有数据,也许您有,... 开始学习SQL及其所有神秘面纱的好地方可能是 http://www.w3schools.com/sql/default.asp 。在每个新学过的课程结束时,按钮“自己尝试”就可以了。另一个很棒的地方可能是 http://sqlfiddle.com/ ,你可以在这里找到一些代码并学习新东西。