以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [求助] SQL查询表的问题  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=158222)

--  作者:5159518
--  发布时间:2020/11/11 18:33:00
--  [求助] SQL查询表的问题
窗口有一个SQLQUERY的表,SQLserver数据库中有“客户信息”表,和“订单概况” 表,现在打算在窗口表中添加一列,用来统计“订单概况”表中,每个客户的的所有成交总价,但是SQL语句怎么写都报错,不知道问题出在哪?请老师指点


select {客户信息}.ID,名称 AS 单位名称,地址 AS 单位地址,电话,税号,账号,开户行,公司规模,经营范围,主要设备,Sum(成交总价) AS 累计金额 Fro m {客户信息} LEFT JOIN {订单概况} ON {客户信息}.ID = {订单概况}.客户ID where {客户信息}.[_Identify] is Null GROUP BY {客户信息}.ID,名称,地址,电话,税号,账号,开户行,公司规模,经营范围,主要设备 ORDER BY {客户信息}.[_Identify]

--  作者:5159518
--  发布时间:2020/11/11 18:53:00
--  
老师,搞明白了,原来字段中的“公司规模”,“经营范围”,“主要设备”的数据类型是《备注》型,将这几列删掉就可以了,但是有带来一个新的问题,我要如何才能将这几列加上去?

如果只是加在前面,就报错:“选择列表中的列 \'客户信息.公司规模\' 无效,因为该列没有包含在聚合函数或 GROUP BY 子句中。”

可是如果加上去,也报错:“不能比较或排序 text、ntext 和 image 数据类型,除非使用 IS NULL 或 LIKE 运算符。”

这咋整?那几列是肯定要加的哈,数据类型也不能改,怎么办?

--  作者:有点蓝
--  发布时间:2020/11/12 9:13:00
--  
数据类型肯定要改,到数据库里改,把这几个列ntext 类型改为nvarchar(max)。注意要到数据库里改