关于group by的sql语句?
with adod_dict do
begin
close;
commandtext:='select bgqxcode,count(*) wjsl from wscl_wsda_file where wjnd=:tnd group by bgqxcode';
parameters[0].DataType:=ftstring;
parameters[0].Value:=trim(cbtjnd.Text);
open;
end;
以上是delphi中的语句,运行时,老是报ora-00979 不是 group by 表达式?
ORA-00979 not a GROUP BY expression
Cause: The GROUP BY clause does not contain all the expressions in the SELECT clause. SELECT expressions that are not included in a group function, such as AVG, COUNT, MAX, MIN, SUM, STDDEV, or VARIANCE, must be listed in the GROUP BY clause.
Action: Include in the GROUP BY clause all SELECT expressions that are not group function arguments.
若是改为select bgqxcode,count(*) wjsl from wscl_wsda_file where wjnd‘2004’group by bgqxcode 在 sql plus 中能正常运行
"带有 group by 子句的查询中的 select 字段列表中,除了包含在 group by 中的字段,其他字段都要求作为 group function (比如 AVG, COUNT, MAX, MIN, SUM )的参数出现,你的子查询违作为主查询的一个字段违反了这个规则了。"
若是改为select bgqxcode,count(*) wjsl from wscl_wsda_file where wjnd='2004' group by bgqxcode 在 sql plus 中能正常运行
bobo_916 能帮我改下这条SQL语句吗?谢谢
语句本身没有问题
试试用d
相关问答:
....接到一个小程序..工作原来大概是这样的...前台是WEB服务器.架构就是ASP+SQL..前台由ASP向SQL添加服务类别(表单).然后又后台程序读取表单..要实时读取..然后显示在服务器上面..从理论上面能行通不?如果可以..后台 ......
我的数据库的表是动态的表,在添加数据的时候有一个字段是DATETIME数据类型的,下面是存储过程
if exists (select * from sysobjects where name='proc_ADD_Order')
drop proc proc_ADD_Order
go
......
A机器(XP)(10.10.6.65)完整的计算机名是: DZD服务器
我装了一个个人版: SQLServer2000,创建了一个实例名为:MYINSTANCE
装了:dotNetFx35setup.exe
并打好了SP4补丁:SQL2000-KB884525-SP ......
users表
name companyId companyName
company表
companyId companyName
1 a公司
2 b公司
......