原帖地址:http://community.csdn.net/Expert/topic/5109/5109248.xml?temp=.6185114表(information) 内结构及内容如下:
表用来存放产品抽样结果入库 :即对产品抽样结果入库。 如下例。我们总共抽样产品为 233(63471010) ,221E(63470010) 231(63471010) 233(63470018) 数目总共四台。入库结果如下:
ID Model(产品型号) SampleId() fault(缺陷) point(分数)
233 63471010 A 100
233 63471010 B 50 两处缺陷 分别为A类,B类缺陷。 233 63470018 A 100 (另外一台编号为63470018 型号为233的产品)
221E 63470010 C 10
221E 63470010 A 100
231 63471010 B 50
如果采用产品编号统计 ,可能会出现编号一样但型号不同的产品。如上列如采取编号统计: 其结果为 3。 ( 63471010 ,63470018 , 63470010 )
要求统计有总共多少台产品。
我是这样解决了问题.procedure TBackup.Button3Click(Sender: TObject);
var
sSQL:string;
begin sSQL := 'select count(b.eme) from (select count(Model+SampleID) as eme from information group by Model+SampleID) b ';with adoQuery1 do
begin
Close;
SQL.Text := sSQL;
Open; if not Eof then
Edit1.Text := Fields[0].AsString;
Close;
end;
end;
end.但是我现在有想添加 两个条件方面的查询。
我在在面版上添加了DateTimePicker1 DateTimePicker2 两个控件。想实现按条件统计,统计 DateTimePicker1 到 DateTimePicker2 时间段内的 统计数据。 这个怎么写啊。知道是在 SQL 语句中添加 个条件语句。 比如 Where .... Between ...and .... 但是具体怎么写,有点困惑了,还请高手解答!!!var low,high:string; low:=formatdatetime('yyyy-mm-dd',DateTimePicker1.Date);
high:=formatdatetime('yyyy-mm-dd',DateTimePicker2.Date);
后面不知道怎么写了~~~~~~~~~~~
表用来存放产品抽样结果入库 :即对产品抽样结果入库。 如下例。我们总共抽样产品为 233(63471010) ,221E(63470010) 231(63471010) 233(63470018) 数目总共四台。入库结果如下:
ID Model(产品型号) SampleId() fault(缺陷) point(分数)
233 63471010 A 100
233 63471010 B 50 两处缺陷 分别为A类,B类缺陷。 233 63470018 A 100 (另外一台编号为63470018 型号为233的产品)
221E 63470010 C 10
221E 63470010 A 100
231 63471010 B 50
如果采用产品编号统计 ,可能会出现编号一样但型号不同的产品。如上列如采取编号统计: 其结果为 3。 ( 63471010 ,63470018 , 63470010 )
要求统计有总共多少台产品。
我是这样解决了问题.procedure TBackup.Button3Click(Sender: TObject);
var
sSQL:string;
begin sSQL := 'select count(b.eme) from (select count(Model+SampleID) as eme from information group by Model+SampleID) b ';with adoQuery1 do
begin
Close;
SQL.Text := sSQL;
Open; if not Eof then
Edit1.Text := Fields[0].AsString;
Close;
end;
end;
end.但是我现在有想添加 两个条件方面的查询。
我在在面版上添加了DateTimePicker1 DateTimePicker2 两个控件。想实现按条件统计,统计 DateTimePicker1 到 DateTimePicker2 时间段内的 统计数据。 这个怎么写啊。知道是在 SQL 语句中添加 个条件语句。 比如 Where .... Between ...and .... 但是具体怎么写,有点困惑了,还请高手解答!!!var low,high:string; low:=formatdatetime('yyyy-mm-dd',DateTimePicker1.Date);
high:=formatdatetime('yyyy-mm-dd',DateTimePicker2.Date);
后面不知道怎么写了~~~~~~~~~~~
假设有就这样写
'where (time between '''+datetostr(DateTimePicker1)+''' and '''+datetostr(DateTimePicker2)+''')'
' From '+
' (Select Count(Model+SampleID) as eme '+
' From Information '+
' Where DateDiff(Day, Time, '+''''+Low+''''+') <= 0 And '+
' DateDiff(Day, Time, '+''''+High+''''+') >= 0 '+
' Group By Model+SampleID) B ';
' From '+
' (Select Count(Model+SampleID) as eme '+
' From Information '+
' Where time>='''+low+''' And time<='''+High+'''+
' Group By Model+SampleID) B ';
可是还是编译不过啊!!!
'where (time between '''+datetostr(DateTimePicker1.datetime)+''' and '''+datetostr(DateTimePicker2.datetime)+''')'
' From '+
' (Select Count(Model+SampleID) as eme ' +
' From Information ' +
' Where workdate<= #'+high+'# And ' +
' workdate>= # '+low+'# ' +
' Group By Model +SampleID) B ';
顺便提个新问题。
如何把dbgrideh footers SUM 的值放入到Edit.text 中
字段 id model point 1 433w 100
2 432w 100 3 452w 10
210 我用dbgrideh footer 的SUM 得到了结果,能不能把结果同时也放到Edit.txt 中呢?