关系的B列在表的五行中具有以下值列表: 3,NULL,2,3,5
以下哪项是AVG(DISTINCT B)的正确值?
我尝试使用指定的行创建关系表,然后执行AVG(DISTINCT A):http://ideone.com/3ItE01
CREATE TABLE A(a int(8), b int(8), c int(8), d int(8), e int(8));
INSERT INTO A VALUES (3, NULL, 2, 3, 5);
INSERT INTO A VALUES (3, NULL, 2, 3, 5);
INSERT INTO A VALUES (3, NULL, 2, 3, 5);
INSERT INTO A VALUES (3, NULL, 2, 3, 5);
INSERT INTO A VALUES (3, NULL, 2, 3, 5);
但我对“AVG(DISTINCT A)”的SQL查询无效。我是SQL新手,正在寻找文档。有什么想法吗?
答案 0 :(得分:1)
像这样创建表
CREATE TABLE `test` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`value` varchar(100) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=latin1;
使用查询
插入值insert into `test`(`id`,`value`) values (1,'3'),(2,'2'),(3,'3'),(4,NULL),(5,'5');
现在使用查询
SELECT AVG( DISTINCT test.value)FROM test
计算平均值,您将获得结果3.3333333333333335