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

如何使用資料集中以查詢到的內容

答題得分者是:P.D.
懸崖邊的舞者
一般會員


發表:14
回覆:0
積分:2
註冊:2007-10-11

發送簡訊給我
#1 引用回覆 回覆 發表時間:2008-04-22 11:04:04 IP:218.69.xxx.xxx 訂閱
   with DataM_A.QryTmp do
begin
Close;
sql.Clear;
sql.Add('select ctn_no from in_ifcsum_empty');
sql.Add(' where ship_cor_code=''' trim(EditOperator.Text) '''');
open;
if not isempty then
begin
Label6.Caption:=inttostr(RecordCount);
DataM_A.QryTmp_c1.Close;
DataM_A.QryTmp_c1.SQL.Clear;
DataM_A.QryTmp_c1.SQL.Add('select * from ctn_in_out where ');
DataM_A.QryTmp_c1.SQL.Add(' ctn_no in (' sql.text ') ');
DataM_A.QryTmp_c1.Open;
End
End
我這個查詢是這樣寫的 就是說sql.text中的查詢被執行了兩次,能不能用資料集的一些功能使其只查一次,第二次就在其集合裡面找了,就想C#中DateSet的功能
P.D.
版主


發表:603
回覆:4038
積分:3874
註冊:2006-10-31

發送簡訊給我
#2 引用回覆 回覆 發表時間:2008-04-22 15:38:26 IP:61.67.xxx.xxx 未訂閱
使用次查詢方式
select * from ctn_in_out where ctn_no in (select ctn_no from in_ifcsum_empty where ship_cor_code=''' trim(EditOperator.Text) '")'

但先決條件, 這兩個Table 必須在同一個檔中(例如 mdf
===================引 用 懸崖邊的舞者 文 章===================
with DataM_A.QryTmp do
begin
Close;
sql.Clear;
sql.Add('select ctn_no from in_ifcsum_empty');
sql.Add(' where ship_cor_code=''' trim(EditOperator.Text) '''');
open;
if not isempty then
begin
Label6.Caption:=inttostr(RecordCount);
DataM_A.QryTmp_c1.Close;
DataM_A.QryTmp_c1.SQL.Clear;
DataM_A.QryTmp_c1.SQL.Add('select * from ctn_in_out where ');
DataM_A.QryTmp_c1.SQL.Add(' ctn_no in (' sql.text ') ');
DataM_A.QryTmp_c1.Open;
End
End
我這個查詢是這樣寫的 就是說sql.text中的查詢被執行了兩次,能不能用資料集的一些功能使其只查一次,第二次就在其集合裡面找了,就想C#中DateSet的功能
編輯記錄
P.D. 重新編輯於 2008-04-22 15:39:44, 註解 無‧
系統時間:2024-05-16 16:17:42
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!