编程论坛's Archiver

guang2356447 发表于 2007-11-5 21:22

关于COUNT的使用方法?

adoquery1.Close;<BR>adoquery1.SQL.Clear;<BR>adoquery1.SQL.Text:='select count(*) as kh_clqk from khts';<BR>adoquery1.Open;<BR>edit1.Text:=adoquery1.FieldValues['kh_clqk'];<BR><BR>这样运行后edit1.text中显示的数子为5  我数据库就5条记录<BR><BR>但是我加个条件后就出错什么原因<BR>adoquery1.Close;<BR>adoquery1.SQL.Clear;<BR>adoquery1.SQL.Text:='select count(*) as kh_clqk from khts where kh_clqk=''1''';<BR>adoquery1.Open;<BR>edit1.Text:=adoquery1.FieldValues['kh_clqk'];<BR>这样运行就出错<BR>我使用的是sybase数据库  采用ODBC数据源连接方式<BR><BR>出错信息<BR>sybase ODBC Driver adaptive SERVER Anywhere SYNTAX ERROR OR ACCESS VIOLATION:Invalid use of an aggregate function

guang2356447 发表于 2007-11-7 13:17

解决   ACCESS中可以  <BR>adoquery1.SQL.Text:='select count(*) as kh_clqk from khts where kh_clqk=''1''';<BR>在sybase中应改为<BR>adoquery1.SQL.Text:='select count(*) aa from khts where kh_clqk=''1''';

provoke 发表于 2007-11-7 13:55

<BR>要是想分组计数,可以考虑使用 having 子句:<BR><BR>select count(*) num from khts<BR>where ...<BR>having num&gt;=...<BR><BR>或者<BR>having num&lt;...

niukang1985 发表于 2007-11-22 16:41

'kh_clqk' 不能作为查询条件把

lonelywg 发表于 2007-11-25 14:22

我记得是
adoquery1.SQL.add:='select count(*) as kh_clqk from khts';

页: [1]

Powered by Discuz! Archiver 6.1.0  © 2001-2007 Comsenz Inc.