有一个表TB,表中有字段:name,day.
如:
name day
张三 10
李四 5
王五 12
张三 15
王五 20
。
。
。
。
如何通过查询的方法,将name中的所有人的day进行求和。如,上面查询之后应该是:张三的day为25.李四为5,王五为32等等
我写的语句就是执行不了,请高手们赐教:
ADOQuery1.close;
ADOQuery1.sql.clear;
ADOQuery1.sql.add('select 。。from...);{这里面的语句需要怎么写呢???}
ADOQuery1..open;
请兄弟们帮忙,还有,就是如何让查询后的结果显示出来,如,在ListBox中显示。
谢谢。
如:
name day
张三 10
李四 5
王五 12
张三 15
王五 20
。
。
。
。
如何通过查询的方法,将name中的所有人的day进行求和。如,上面查询之后应该是:张三的day为25.李四为5,王五为32等等
我写的语句就是执行不了,请高手们赐教:
ADOQuery1.close;
ADOQuery1.sql.clear;
ADOQuery1.sql.add('select 。。from...);{这里面的语句需要怎么写呢???}
ADOQuery1..open;
请兄弟们帮忙,还有,就是如何让查询后的结果显示出来,如,在ListBox中显示。
谢谢。
解决方案 »
- 如何从DLL中导出类以及利用这个类创建类的实体?
- BDE+MSSQL打包问题!~
- 数据库查询出现错误~
- 谁能借用一个文件给我?qtintf.dll !!!急
- 主从表更新失败,主表主键为autoinc类型
- 自做的文件复制函数,在复制大文件时进度条无法正常显示,像死机似的,有没有办法解决。
- ★★★★●●■■用delphi的朋友们, 留下QQ!?◇◎●☆★★
- 用WISE INSTALL制作过安装程序得请进,问一个安装得问题。
- combobox的级联显示
- 新年好,散分。
- 有一个图片通过base64编码后,如何将其复原在image中显示
- delphi WebBrowser控件BeforeNavigate2事件,url跳转与表单提交
SQL语句 'Select * From {数据库名称或数据表名称} Where{条件语句比如 Name = :Name}'
Name 是数据表里面的字段Name = :Name 是一个变量 意思是当 Name 字段里面的数据 = 变量:Name
就显示。ListBox1.items.ass(ADOQuery1.FieldByName[Name]);
最好是用DBGrid 组件和数据源组件 DataSource 一起用!这样比较方便。
对所有人,也就是说如果名字相同的,就对day进行求和。
简单的说,就是将name中的每一个人的day进行统计。
因为name中可能会有相同一个人的名字,如‘张三’在name中出现很多次,那么就要对他的所有day进行相加。
这个倒没关系,现在主要的就是要怎么样进行对每一个人day的求和。不懂啊
你是说把day里面的数字求和啊?、、也就说全部加起来嘛!
这个挺简单的啊!
Int:integer ;
begin
ADOQuery1.close;
ADOQuery1.sql.clear;
ADOQuery1.sql.add('Select * From TB ') ;
ADOQuery1.open;
Int := StrToInt(ADOQuery1.FieldByName(day).Value ) ; //Int是定义的整形变量
While Not(ADOQuery1.Eof) do
begin
ADOQuery1.Next ;
Int:=Int + StrToInt(ADoQuery1.FieldByName(day).Value );
end;
ListBox1.items.add(IntToStr(Int));
LZ看看这样行不行?、、
select name,sum(day) as days from TB group by name
begin
ADOQuery1.close;
ADOQuery1.sql.clear;
ADOQuery1.sql.add('Select name,sum(day) as day From TB group by name') ;
ADOQuery1.open;
while not ADOQuery1.eof do
begin
ListBox1.Items.Add(ADOQuery1.FieldByName(name).Value+inttostr(ADOQuery1.FieldByName(day).Value));
ADOQuery1.Next;
end;
FROM "表格名"
GROUP BY "栏位1" 在我们的示范上, Store_Information 表格
store_name Sales Date
Los Angeles $1500 Jan-05-1999
San Diego $250 Jan-07-1999
Los Angeles $300 Jan-08-1999
Boston $700 Jan-08-1999 我们就打入,
SELECT store_name, SUM(Sales)
FROM Store_Information
GROUP BY store_name 结果: store_name SUM(Sales)
Los Angeles $1800
San Diego $250
Boston $700
当我们选不只一个栏位,且其中至少一个栏位有包含函数的运用时,我们就需要用到 GROUP BY 这个指令。在这个情况下,我们需要确定我们有 GROUP BY 所有其他的栏位。换句话说,除了有包括函数的栏位外,我 们都需要将其放在 GROUP BY 的子句中。 从来没搞过sql ,呵呵。刚才冒昧的回答了,不过也能实现,刚才看了楼上几位的回答学习了。
参后要需要时用参数 name 就行了
然后在库中逐个查询namelist的人名,将day字段相加即可
select sum(day) as day1 from TB where name =namelist[i]