Re: [INTERBASE]更新資料UPDATE
※ 引述《skya0 (a0)》之銘言:
: ※ 引述《skya0 (a0)》之銘言:
: : UPDATE TableName A SET 卡號=(SELECT 卡號 FROM TableName B WHERE
: : A.客戶編號=B.客戶編號 AND 付款類型='1' ROWS 1) WHERE A.付款類型= '2'
: 您大概是IB6或7之前的版本吧 沒有ROWS 指令
: UPDATE TableName A SET 卡號=(SELECT DISTINCT 卡號 FROM TableName B WHERE
: A.客戶編號=B.客戶編號 AND 付款類型='1') WHERE A.付款類型= '2'
: 或
: UPDATE TableName A SET 卡號=(SELECT 卡號 FROM TableName B WHERE
: A.客戶編號=B.客戶編號 AND 付款類型='1') WHERE A.付款類型= '2'
: 試試
因為Select出來的資料有多筆 所以會出現這樣的訊息 試試第二句
SELECT DISTINCT ,只會抓出不同的卡號,
如果每個客戶都只有一個獨立卡號的話 應該就會ok
如果每個客戶有兩個以上的卡號 那就要先整理一下了 (我猜你是這樣的情形)
ROWS 1 的話 就會只抓第一筆 ,不過你是老舊的IB 沒這指令
整理的方法很多 先拷貝所需要的資料到分散到其他 table
在更新所需要的回來
理論上您的需求 光靠SQL指令就可完成
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.133.52.38
討論串 (同標題文章)