求和问题 ( 积分: 50 )

  • 主题发起人 主题发起人 wqhatnet
  • 开始时间 开始时间
W

wqhatnet

Unregistered / Unconfirmed
GUEST, unregistred user!
2号棕擦::114::尺'::813102::A5152::棕擦::60::查理
2号棕擦::64::尺'::805607::A6332::棕擦::32::邦赛
黑纳帕::400::尺'::080310::A2135::黑::200::蜘蛛王
黑中牛::114::尺'::813101::A5151::黑::60::查理
黑中牛::28.8::尺'::083102::6062::黑::16::孙理国
黑中牛::57.6::尺'::083301::6062::黑::32::杰豪
黑中牛::57.6::尺'::083302::6062::黑::32::杰豪
黑中牛::64::尺'::083101::6061::黑::32::孙理国
新棕油::86.4::尺'::083303::6062::棕油::48::杰豪
新棕油::86.4::尺'::083304::6062::棕油::48::杰豪
将以上LISTBOX中的数据
统计为:
2号棕擦::
黑中牛::
新棕油::
 
用正则表达式 很多方法 或者模糊分析内容等,都可以分析出来数字 然后的就好做了
 
按什麽求和?
 
已经有分割号了,要是我做的话,首先把这些数据存进一个临时表里,然后在求和。
比如建立一个临时表#orderProduct
ProductName varchar(30)
quanity int
unit varchar(10)
ProductNo varchar(30)
colorIndex varchar(30)
colorname varchar(20)
Productsize int
Producttrade varchar(30)

然后用sql来
select productName , sum(quanity) from #orderProduct group by productName
将出现:
productName quanity
2号棕擦:: 15
黑中牛:: 34
新棕油:: 56
 
select
select count(field1) from table1 where field1='2号棕擦' as a,
select count(field1) from table1 where field1=黑中牛' as b,
select count(field1) from table1 where field1='新棕油'as c
from table1

不知道搂主是不是这个意思
 
var
i,j,ok:integer;
abc:String;
listrps,list1,list2:TStrings;
begin
if listb.items.count<1 then exit;
ok:=0;
listrps:=Tstringlist.Create;
list1:=Tstringlist.Create;
list2:=Tstringlist.Create;
list1.text:='';
list2.text:='';
/////////////////
for i:=0 to listb.items.count-1 do
begin//all
listb.Itemindex:=i;
Application.ProcessMessages;
abc:=listb.Items.Strings;
listrps.text :=StringReplace(abc,'::',#13#10,[rfReplaceAll]);
if list1.Count<1 then
begin//5
list1.Add(listrps.strings[0]);
list2.Add(listrps.strings[1]);
end;//5
//showmessage(listrps.text);
for j:=0 to list1.Count-1 do
begin//1
if listrps.strings[0]<>list1.Strings[j] then ok:=ok+1;

if listrps.strings[0]=list1.Strings[j] then
begin
list2.Strings[j]:=floatTostr(StrtoFloat(list2.Strings[j])+Strtofloat(listrps.Strings[1]));
break;
end;
end;//1
//////////
if ok=list1.Count then
begin//3
list1.Add(listrps.strings[0]);
list2.Add(listrps.strings[1]);
end;//3
ok:=0;
//////////
end;//all
memo1.Lines.Clear;
for j:=0 to list1.Count-1 do
begin
memo1.Lines.Add(list1.strings[j]+'为'+list2.strings[j]+'尺')
end;
/////////////////
listrps.free;
list1.free;
list2.free;
end;
 
你真是太好了 代码都写出来了好人呀现在好人不多呀.不过他自己能写就好了
 

Similar threads

I
回复
0
查看
662
import
I
I
回复
0
查看
640
import
I
I
回复
0
查看
697
import
I
I
回复
0
查看
695
import
I
后退
顶部