选择列表中的列无效,因为该列没有包含在聚合函数或 GROUP BY 子句中
选择列表中的列无效,因为该列没有包含在聚合函数或 GROUP BY 子句中
T-SQL核心语句形式:
SELECT --指定要选择的列或行及其限定
[INTO
]
--INTO子句,指定结果存入新表
FROM
--FROM子句,指定表或视图
[WHERE
]
--WHERE子句,指定查询条件
[GROUP BY
]
--GROUP BY子句,指定分组表达式
[HAVING
]
--HAVING子句,指定分组统计条件
[ORDER BY
[ASC|DESC]]
--ORDER子句,指定排序表达式和顺序
聚合函数:
COUNT:求组中项数,返回int类型整数。
GROUP BY 子句:指定用来放置输出行的组。指定 GROUP BY 时,选择列表中任一非聚合表达式内的所有列都应包含在
GROUP BY 列表中,或者 GROUP BY 表达式必须与选择列表表达式完全匹配。如果 SELECT
子句中包含聚合函数,则计算每组的汇总值。
示例一(Select选择列表中存在聚合函数):
错误的写法:
SELECT U_ID,House_Addrinfo,COUNT(U_ID) AS CX
FROM YX_ChuShou
GROUP BY U_ID
ORDER BY CX DESC
这条语句出现"选择列表中的列 'YX_ChuShou.House_Addrinfo' 无效,因为该列没有包含在聚合函数或
GROUP BY 子句中。"的错误提示。
正确的写法:
SELECT U_ID,min(House_Addrinfo), COUNT(U_ID) AS CX
FROM YX_ChuShou
GROUP BY U_ID
ORDER BY CX DESC
或
SELECT U_ID,House_Addrinfo, COUNT(U_ID) AS
CX
FROM YX_ChuShou
GROUP BY U_ID ,House_Addrinfo
ORDER BY CX DESC
示例二(Select选择列表中不存在聚合函数):
错误的写法:
select au_fname,au_lname,zip, city,state
from authors
group by city
服务器: 消息 8120,级别 16,状态 1,行 1
列 'authors.au_fname' 在选择列表中无效,因为该列既不包含在聚合函数中,也不包含在 GROUP BY
子句中。
服务器: 消息 8120,级别 16,状态 1,行 1
列 'authors.au_lname' 在选择列表中无效,因为该列既不包含在聚合函数中,也不包含在 GROUP BY
子句中。
正确的写法:
select au_fname,au_lname,zip, city,state
from authors
group by city,au_lname,au_fname,zip,state
或:
select au_fname,au_lname,zip, city,state
from authors
order by city
---使用order by 子句进行排序
即指定 GROUP BY 时,选择列表中任一非聚合表达式内的所有列都应包含在 GROUP BY 列表中,或者 GROUP BY
表达式必须与选择列表表达式完全匹配。
小白:因为结果是一个表,所以一般不会出现 select
*,sum(job_id)这么写的,不然sum就一个值,你让它跟谁并列显示一行去?
如果 select job_id,job_desc,sum(max_lvl) from jobs group by
jobs.job_id,job_desc
非要并列显示点什么,那对应列都应写在group by里,确保该列一个值就出现一次, 一个值对应一个sum
有一个列就加进group by一个
最新文章
- web常见错误提示总结
- [No000080]右键解锁增强Chrome插件开发,破除防复制
- struts2-(2)HelloWorld
- set集合的用法总结(转)
- ubuntu 换源
- iOS 使用compare 进行对比
- Samba 服务器介绍
- 最近很火的携程Java 工程师的一道面向对象面试题
- Linux下Redis的安装、配置操作说明
- Js模块模式
- msyql sql语句
- 201521123001《Java程序设计》第5周学习总结
- Struts2超链接
- CNVD-C-2019-48814 漏洞
- Android热更新技术——Tinker、nuwa、AndFix、Dexposed
- 《DSP using MATLAB》Problem 7.5
- 国外程序员整理的C++资源大全
- 20155229《网络对抗技术》Exp2:后门原理与实践
- Jenkins进阶-远程构建任务(4)
- Windows 7 With Sp1 简体中文旗舰版
热门文章
- Refresh / Updating a form screen in Oracle D2k Forms 6i
- shell 标出输入、标准输出、错误输出
- MYSQL写入数据时报错ERROR 1366 (HY000): Incorrect string value: '\xE8\x8B\xB1\xE5\xAF\xB8...' for c 插入中文不能插入
- MS16-016 提权EXP
- uva 10065 (凸包+求面积)
- python_way day21 Django文件上传Form方式提交,原生Ajax提交字符处啊,Django文件上传之原生Ajax方式、jQuery Ajax方式、iframe方式,Django验证码,抽屉示例,
- 概念学习(Concept Learning)
- Hibernate级联删除时:Cannot delete or update a parent row: a foreign key constraint fails异常
- android tablelayout 显示图片
- linux使用脚本自动连接数据库