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

請一個資料重覆的問題?

尚未結案
paa
初階會員


發表:50
回覆:101
積分:30
註冊:2005-02-01

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-08-29 12:43:33 IP:210.70.xxx.xxx 未訂閱
有一個資料庫db1資料表test,欄位名two,newtwo二個,在two這個欄位輸入了30筆資料,可是卻有二、三筆是重覆的,不知是否可以把重覆的刪掉,然後在newtwo這個欄位把重覆的次數給顯示在newtwo上, begin with ADOQuery1 do begin Close; SQL.Clear; SQL.Add('insert newtwo (two) select distinct two from two'); SQL.Add('(:two)'); end; end;可是跑出來卻都沒反應。請高手幫幫我
paa
初階會員


發表:50
回覆:101
積分:30
註冊:2005-02-01

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-08-29 13:53:31 IP:210.70.xxx.xxx 未訂閱
在sql語法改 with ADOQuery1 do begin Close; SQL.Clear; SQL.Add('SELECT DISTINCT two FROM test and insert into newtwo'); // SQL.Add('(:two)'); end; end;可是出來也是沒反應,請高手幫幫我
malanlk
尊榮會員


發表:20
回覆:694
積分:577
註冊:2004-04-19

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-08-29 15:05:59 IP:203.69.xxx.xxx 未訂閱
with ADOQuery1 do
begin
  Close;
  SQL.Clear;
  SQL.Add('SELECT two, Count(*) as newtwo FROM test GROUP BY two');
  Open;
end;
不需刪除, 及 newtwo 欄位也可以選出資料來.... 發表人 - malanlk 於 2005/08/29 15:09:55
paa
初階會員


發表:50
回覆:101
積分:30
註冊:2005-02-01

發送簡訊給我
#4 引用回覆 回覆 發表時間:2005-08-29 22:00:19 IP:210.70.xxx.xxx 未訂閱
不好意思,可能誤會我的意思了,我的意思是說假設資料庫裡有 12 23 45 12 23 重覆的有兩筆,那可否把45不重覆這筆給取出來,放在新欄位上(NEWTWO), var a: array[0..100] of String; s:string; i,j:integer; begin adoQuery1.Close; adoQuery1.SQL.Clear; adoQuery1.SQL.Add('Select Count(*) From test'); adoQuery1.Open; I := adoQuery1.Fields[0].Value; //計算總筆數 For j:=1 to i do begin s:=Parameters.ParamValues['two']; //把每筆傳到s字串 a[j]:= s; //字串在傳到陣列 adoQuery1.SQL.Add('select two from test where two=a[j]'); //比對資料欄位是否與陣列值相同 if(s) //不相同的話,就輸出到新欄位 begin adoQuery1.SQL.Add ('INSERT INTO test([newtwo]) VALUES') ; end; end; end;可是這樣會有錯耶,請高手幫幫我?
malanlk
尊榮會員


發表:20
回覆:694
積分:577
註冊:2004-04-19

發送簡訊給我
#5 引用回覆 回覆 發表時間:2005-08-29 23:20:24 IP:61.219.xxx.xxx 未訂閱
with ADOQuery1 do
begin
  Close;
  SQL.Clear;
  SQL.Add(UPDATE test SET newtwo=two WHERE two IN (SELECT two FROM test  WHERE COUNT(*)=1 GROUP BY  two)');
  ExecSQL;
end;
ㄧ句解決
系統時間:2024-06-01 22:59:01
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!