全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1218
推到 Plurk!
推到 Facebook!

SQL語法 Sum取值

尚未結案
sword185
一般會員


發表:36
回覆:81
積分:23
註冊:2002-06-05

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-12-19 19:02:04 IP:61.64.xxx.xxx 未訂閱
請問各位大大........資料庫為MDB 問題一 procedure TFm_WPMSalarySearch.Sum_Value; Var AT,OT,WT :String; begin Fm_DataModule.ADOQ_WPLData.Close; Fm_DataModule.ADOQ_WPLData.SQL.Clear; Fm_DataModule.ADOQ_WPLData.SQL.Add('Select WP_ID, Sum(WL_AT), Sum(WL_OT), Sum(WL_WT) From WPLData Group By WP_ID'); Fm_DataModule.ADOQ_WPLData.Open; end; 請問如何將WL_AT讀出並填入AT 請問如何將WL_OT讀出並填入OT 請問如何將WL_WT讀出並填入WT 問題二 Fm_DataModule.ADOQ_WPLData1.Close; Fm_DataModule.ADOQ_WPLData1.SQL.Clear; Fm_DataModule.ADOQ_WPLData1.SQL.Add('Select WP_ID, Sum(WL_AT), Sum(WL_OT), Sum(WL_WT) From WPLData Where WP_ID Like :Q1 Group By WP_ID'); Fm_DataModule.ADOQ_WPLData1.SQL.Add('Where WP_ID Like :Q1'); Fm_DataModule.ADOQ_WPLData1.Parameters.ParamByName('Q1').Value:='%' Edt_Search.Text '%'; Fm_DataModule.ADOQ_WPLData1.Open; 請問哪邊有錯.......如何改寫 發表人 - sword185 於 2003/12/19 19:07:35
hagar
版主


發表:143
回覆:4056
積分:4445
註冊:2002-04-14

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-12-19 19:06:07 IP:202.39.xxx.xxx 未訂閱
1. AT => Fm_DataModule.ADOQ_WPLData.Fields[1].AsInteger; OT => Fm_DataModule.ADOQ_WPLData.Fields[2].AsInteger; WT => Fm_DataModule.ADOQ_WPLData.Fields[3].AsInteger; 2.
procedure TFm_WPMSalarySearch.Sum_Value;
Var 
  AT,OT,WT :String;
begin
  Fm_DataModule.ADOQ_WPLData.Close;
  Fm_DataModule.ADOQ_WPLData.SQL.Clear;
  Fm_DataModule.ADOQ_WPLData.SQL.Add('Select WP_ID, Sum(WL_AT) as AT, Sum(WL_OT) as OT, Sum(WL_WT) as WT From WPLData Group By WP_ID');
  Fm_DataModule.ADOQ_WPLData.Open;
  
  AT := Fm_DataModule.ADOQ_WPLData.FieldByName('AT').AsInteger;
  OT := Fm_DataModule.ADOQ_WPLData.FieldByName('OT').AsInteger;
  WT := Fm_DataModule.ADOQ_WPLData.FieldByName('WT').AsInteger;
end;    
--- Everything I say is a lie.
sword185
一般會員


發表:36
回覆:81
積分:23
註冊:2002-06-05

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-12-19 19:25:33 IP:61.64.xxx.xxx 未訂閱
問題二 Fm_DataModule.ADOQ_WPLData1.Close; Fm_DataModule.ADOQ_WPLData1.SQL.Clear; Fm_DataModule.ADOQ_WPLData1.SQL.Add('Select WP_ID, Sum(WL_AT), Sum(WL_OT), Sum(WL_WT) From WPLData Where WP_ID Like :Q1 Group By WP_ID'); Fm_DataModule.ADOQ_WPLData1.SQL.Add('Where WP_ID Like :Q1'); Fm_DataModule.ADOQ_WPLData1.Parameters.ParamByName('Q1').Value:='%' Edt_Search.Text '%'; Fm_DataModule.ADOQ_WPLData1.Open; 若是WP_ID必須由Edt_Search.Text給值...那要如何修改呢?
hagar
版主


發表:143
回覆:4056
積分:4445
註冊:2002-04-14

發送簡訊給我
#4 引用回覆 回覆 發表時間:2003-12-20 08:47:49 IP:202.39.xxx.xxx 未訂閱
原本寫的應該就可以了吧. (原本的 where 條件式多寫一次了)
begin
  Fm_DataModule.ADOQ_WPLData1.Close;
  Fm_DataModule.ADOQ_WPLData1.SQL.Clear;
  Fm_DataModule.ADOQ_WPLData1.SQL.Add('Select WP_ID, Sum(WL_AT), Sum(WL_OT), Sum(WL_WT) From WPLData Where WP_ID Like :Q1 Group By WP_ID');
  Fm_DataModule.ADOQ_WPLData1.Parameters.ParamByName'Q1').Value := '%'   Edt_Search.Text   '%';
  Fm_DataModule.ADOQ_WPLData1.Open;
end;
--- Everything I say is a lie.
系統時間:2024-05-04 12:39:00
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!