線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1626
推到 Plurk!
推到 Facebook!

要如何篩選

答題得分者是:christie
zkying
一般會員


發表:3
回覆:9
積分:2
註冊:2007-10-27

發送簡訊給我
#1 引用回覆 回覆 發表時間:2007-10-29 20:13:31 IP:220.130.xxx.xxx 訂閱

請問
aaa := '12345-5555'
要如何篩選 aaa:='12345' 篩選 "-" 前面的字串

感謝大大們的幫忙



不好意思沒有敘述清楚

資料庫 access 有一欄位 aaa



aaa 的內容是 'XXXXX-bbbbb'
要如何篩選為 aaa:='XXXXX' 篩選 "-" 前面的字串 , "-" 後面的不要

該如何做 ?

謝謝
編輯記錄
zkying 重新編輯於 2007-10-30 09:21:36, 註解 無‧
P.D.
版主


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

發送簡訊給我
#2 引用回覆 回覆 發表時間:2007-10-29 21:43:57 IP:61.67.xxx.xxx 未訂閱
來意不明
1.資料庫?
2.你是要比對字串嗎?
3.你是要把資料欄位中有這類的挑出來嗎?
4.你提到 a:= '12345-12345', 要找出 a:='12345', 很奇怪呢!
5.你是要找出"含"12345的, 還是要找出是12345

我假設你要的是第3項, 但不知你的資料庫是那種, 僅列一種常用寫法

select * from 資料庫名 where a欄位 like '12345%'
chuang7287
初階會員


發表:1
回覆:20
積分:29
註冊:2002-10-22

發送簡訊給我
#3 引用回覆 回覆 發表時間:2007-10-30 09:02:14 IP:61.228.xxx.xxx 訂閱
我猜想你要的應該是
aaa:=Copy(aaa,1,pos('-',aaa)-1);

如果猜錯那你就得說明清楚一點你要的是什麼?

===================引 用 zkying 文 章===================

請問
aaa := '12345-5555'
要如何篩選 aaa:='12345' 篩選 "-" 前面的字串

感謝大大們的幫忙
------
結案=動力
高手等等我 .... 追隨高手永不懈怠!!
zkying
一般會員


發表:3
回覆:9
積分:2
註冊:2007-10-27

發送簡訊給我
#4 引用回覆 回覆 發表時間:2007-10-30 09:20:49 IP:220.130.xxx.xxx 訂閱
不好意思沒有敘述清楚

資料庫 access 有一欄位 aaa



aaa 的內容是 'XXXXX-bbbbb'
要如何篩選為 aaa:='XXXXX' 篩選 "-" 前面的字串 , "-" 後面的不要

該如何做 ?

謝謝
christie
資深會員


發表:30
回覆:299
積分:475
註冊:2005-03-25

發送簡訊給我
#5 引用回覆 回覆 發表時間:2007-10-30 10:27:37 IP:203.73.xxx.xxx 訂閱
若是固定長度

select LEFT(aaa, 5) from tabxx

===================引 用 zkying 文 章===================
不好意思沒有敘述清楚

資料庫 access 有一欄位 aaa



aaa 的內容是 'XXXXX-bbbbb'
要如何篩選為 aaa:='XXXXX' 篩選 "-" 前面的字串 , "-" 後面的不要

該如何做 ?

謝謝
------
What do we live for if not to make life less difficult for each other?
編輯記錄
christie 重新編輯於 2007-10-30 10:40:31, 註解 無‧
zkying
一般會員


發表:3
回覆:9
積分:2
註冊:2007-10-27

發送簡訊給我
#6 引用回覆 回覆 發表時間:2007-10-30 10:53:27 IP:220.130.xxx.xxx 訂閱

===================引 用 christie 文 章===================
若是固定長度

select LEFT(aaa, 5) from tabxx

===================引 用 zkying 文 章===================
不好意思沒有敘述清楚

資料庫 access 有一欄位 aaa



aaa 的內容是 'XXXXX-bbbbb'
要如何篩選為 aaa:='XXXXX' 篩選 "-" 前面的字串 , "-" 後面的不要

該如何做 ?

謝謝





==============================
不好意思沒有敘述清楚

aaa的長度 38位元 "-" 在任何位置 但是只有一個 "-"
例如 :

aaa 的內容是 '我的-公司" 我只要 "我的"
aaa 的內容是 "我的公司-在台北" 我只要 "我的公司"
chuang7287
初階會員


發表:1
回覆:20
積分:29
註冊:2002-10-22

發送簡訊給我
#7 引用回覆 回覆 發表時間:2007-10-30 10:59:18 IP:61.228.xxx.xxx 訂閱
Access 請用 instr

SELECT Left(aaa,InStr(1,aaa,'-')-1) AS FieldName FROM TableName;


===================引 用 zkying 文 章===================

===================引 用 christie 文 章===================
若是固定長度

select LEFT(aaa, 5) from tabxx

===================引 用 zkying 文 章===================
不好意思沒有敘述清楚

資料庫 access 有一欄位 aaa



aaa 的內容是 'XXXXX-bbbbb'
要如何篩選為 aaa:='XXXXX' 篩選 "-" 前面的字串 , "-" 後面的不要

該如何做 ?

謝謝





==============================
不好意思沒有敘述清楚

aaa的長度 38位元 "-" 在任何位置 但是只有一個 "-"
例如 :

aaa 的內容是 '我的-公司" 我只要 "我的"
aaa 的內容是 "我的公司-在台北" 我只要 "我的公司"
------
結案=動力
高手等等我 .... 追隨高手永不懈怠!!
zkying
一般會員


發表:3
回覆:9
積分:2
註冊:2007-10-27

發送簡訊給我
#8 引用回覆 回覆 發表時間:2007-10-30 20:02:40 IP:220.130.xxx.xxx 訂閱
       ggg:string;

ggg := adoquery1.Fields[5].value;

query1.params[3].Asstring := Left(ggg,InSert(1,ggg,'-')-1);

編譯沒過 停在left 尾 " (" 前

請各位大大幫幫忙
christie
資深會員


發表:30
回覆:299
積分:475
註冊:2005-03-25

發送簡訊給我
#9 引用回覆 回覆 發表時間:2007-10-30 20:31:14 IP:218.171.xxx.xxx 訂閱
===================引 用 chuang7287 文 章===================
Access 請用 instr
SELECT Left(aaa,InStr(1,aaa,'-')-1) AS FieldName FROM TableName;
=========================================================
var
ggg:string;
begin

ADOQuery1.SQL.Text:='select Left(aaa,InStr(1,aaa,''-'')-1) as LAAA From TableName'
ADOQuery1.SQL.Open;

ggg :=ADOQuery1.FieldByName('LAAA').AsString;
query1.params[3].Asstring := ggg;
..
end;//Try It.
------
What do we live for if not to make life less difficult for each other?
zkying
一般會員


發表:3
回覆:9
積分:2
註冊:2007-10-27

發送簡訊給我
#10 引用回覆 回覆 發表時間:2007-10-30 22:38:49 IP:220.130.xxx.xxx 訂閱
                 query1.SQL.clear;
query1.SQL.add('update print_add ');
query1.SQL.add(' set 貨品 =');
Query1.SQL.add('select Left(貨品,InStr(1,貨品,''-'')-1)');
Query1.Open;

query1.execsql;
請問用 UPDATE 方式要如何修改 不好意思我是新手上路 請見諒
christie
資深會員


發表:30
回覆:299
積分:475
註冊:2005-03-25

發送簡訊給我
#11 引用回覆 回覆 發表時間:2007-10-31 08:06:02 IP:203.73.xxx.xxx 訂閱

[code delphi]
Query1.SQL.Text:='update print_add set 貨品 = Left(貨品,InStr(1,貨品,''-'')-1) where InStr(1,貨品,''-'') > 0';
Query1.ExecSql;

[/code]

===================引 用 zkying 文 章===================
query1.SQL.clear;
query1.SQL.add('update print_add ');
query1.SQL.add(' set 貨品 =');
Query1.SQL.add('select Left(貨品,InStr(1,貨品,''-'')-1)');
Query1.Open;

query1.execsql;
請問用 UPDATE 方式要如何修改 不好意思我是新手上路 請見諒
------
What do we live for if not to make life less difficult for each other?
zkying
一般會員


發表:3
回覆:9
積分:2
註冊:2007-10-27

發送簡訊給我
#12 引用回覆 回覆 發表時間:2007-10-31 12:41:09 IP:220.130.xxx.xxx 訂閱
謝謝大大 問題完全解答正確   
===================引 用 christie 文 章===================

[code delphi]
Query1.SQL.Text:='update print_add set 貨品 = Left(貨品,InStr(1,貨品,''-'')-1) where InStr(1,貨品,''-'') > 0';
Query1.ExecSql;

[/code]

===================引 用 zkying 文 章===================
query1.SQL.clear;
query1.SQL.add('update print_add ');
query1.SQL.add(' set 貨品 =');
Query1.SQL.add('select Left(貨品,InStr(1,貨品,''-'')-1)');
Query1.Open;

query1.execsql;
請問用 UPDATE 方式要如何修改 不好意思我是新手上路 請見諒
系統時間:2024-05-17 9:50:46
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!