上一篇主題 :: 下一篇主題 |
發表人 |
內容 |
impotence

註冊時間: 2005-02-21 文章: 135 來自: Hong Kong
第 1 樓
|
發表於: 星期一 七月 09, 2007 9:30 am 文章主題: 一個小問題請問 ~~~ |
|
|
我有一個 test.dbf , 結構是 (code C(10), qty N(7)), 內容如下
code qty
A001 0
A002 0
A003
A004
A003 和 A004 的 qty 是 null , 沒有數據的, 如何可以用一句 select 把 A003 及 A004 找出來 ?
** select * from test where isnull(qty)
** select * from test where isblank(qty)
** 得不到結果 , 如果用
** select * from test where empty(qty)
** 結果所有記錄都出來 ... _________________ 一個常常忘記 Command 的人 ! |
|
回頂端 |
|
 |
朱育興
註冊時間: 2003-08-25 文章: 661 來自: 台中市大里區
第 2 樓
|
發表於: 星期一 七月 09, 2007 9:53 am 文章主題: |
|
|
你確定你的 QTY 欄位可以接受 NULL 值嗎,如果可以
CREATE CURSOR AA (code C(10), qty N(7) NULL)
INSERT INTO AA VALUES("A001",0)
INSERT INTO AA VALUES("A002",0)
INSERT INTO AA VALUES("A003",.NULL.)
INSERT INTO AA VALUES("A004",.NULL.)
SELECT * FROM AA A WHERE ISNULL(A.QTY) && 答案是 A003, A004 兩筆記錄
SELECT * FROM AA A WHERE EMPTY(A.QTY) && 答案是 A001, A002 兩筆記錄
SELECT * FROM AA A WHERE ISBLANK(A.QTY) && 答案是沒有符合的記錄 _________________ 希望有更多人來參與
VFP wiki - 需要大家一起完成的VFP電子書與FAQ |
|
回頂端 |
|
 |
小賴
註冊時間: 2004-12-27 文章: 476
第 3 樓
|
發表於: 星期一 七月 09, 2007 10:23 am 文章主題: |
|
|
奇怪 !
ISBLANK(QTY) 明明是 .T.
select * from test where isblank(qty) 就是取不到資料
如果BROWSE FOR ISBLANK(QTY) 就有資料
COPY TO Test1 FOR ISBLANK(QTY) 也行
SELECT ...WHERE 就不行 ?
小賴 在 星期一 七月 09, 2007 10:33 am 作了第 1 次修改 |
|
回頂端 |
|
 |
impotence

註冊時間: 2005-02-21 文章: 135 來自: Hong Kong
第 4 樓
|
發表於: 星期一 七月 09, 2007 10:26 am 文章主題: |
|
|
朱大哥,
Sorry , 那個程式不是我寫的 , 我沒辦法改變它可以接受 .NULL. ! 實際上 , 那個 dbf 有超過 200,000 個 records , 我現在就是要想辦法把那些 qty 為 "空 " 的找出來 (不是 .NULL. ) ... _________________ 一個常常忘記 Command 的人 ! |
|
回頂端 |
|
 |
garfield Site Admin

註冊時間: 2003-01-30 文章: 2160
第 5 樓
|
發表於: 星期一 七月 09, 2007 10:31 am 文章主題: |
|
|
能否試著手動修改欄位結構,
將它變成字串型態,
再找出empty()的資料. _________________ 利用>>搜尋<<的功能會比問的還要快得到答案. |
|
回頂端 |
|
 |
impotence

註冊時間: 2005-02-21 文章: 135 來自: Hong Kong
第 6 樓
|
發表於: 星期一 七月 09, 2007 10:34 am 文章主題: |
|
|
garfield 寫到: | 能否試著手動修改欄位結構,
將它變成字串型態,
再找出empty()的資料. |
那些是 店舖在用的 dbf 格式 , 每天用 ftp update 到 公司的 FTP Server , 再更新公司的 DBF ... 沒辦法對 店舖的 DBF 作修改 , 因一改就翻天動地 ..... _________________ 一個常常忘記 Command 的人 ! |
|
回頂端 |
|
 |
BIN

註冊時間: 2004-07-22 文章: 94 來自: Tainan, Taiwan
第 7 樓
|
發表於: 星期一 七月 09, 2007 10:58 am 文章主題: |
|
|
select * from test where qty is null
or
select * from test where len(nvl(qty,''))=0 |
|
回頂端 |
|
 |
小賴
註冊時間: 2004-12-27 文章: 476
第 8 樓
|
發表於: 星期一 七月 09, 2007 11:18 am 文章主題: |
|
|
TO : impotence兄
辛苦一點用APPEND FROM
CREATE CURSOR TEST1 (code C(10), qty N(7))
APPEND FROM TEST FOR ISBLANK(QTY)
TO: BIN 兄
二種方式我為什麼都TRY不出來 ? |
|
回頂端 |
|
 |
impotence

註冊時間: 2005-02-21 文章: 135 來自: Hong Kong
第 9 樓
|
發表於: 星期一 七月 09, 2007 11:26 am 文章主題: |
|
|
小賴 寫到: | TO : impotence兄
辛苦一點用APPEND FROM
CREATE CURSOR TEST1 (code C(10), qty N(7))
APPEND FROM TEST FOR ISBLANK(QTY)
TO: BIN 兄
二種方式我為什麼都TRY不出來 ? |
謝謝 "小賴" .... , 這個辦法可行 , 但為什麼沒辦法用 select 做到 .... 煩 .... _________________ 一個常常忘記 Command 的人 ! |
|
回頂端 |
|
 |
BIN

註冊時間: 2004-07-22 文章: 94 來自: Tainan, Taiwan
第 10 樓
|
發表於: 星期一 七月 09, 2007 11:54 am 文章主題: |
|
|
to 小賴:
那qty空白的值應該不是.NULL.,
不然依上面所討論的早就有解答了... |
|
回頂端 |
|
 |
小賴
註冊時間: 2004-12-27 文章: 476
第 11 樓
|
發表於: 星期一 七月 09, 2007 12:26 pm 文章主題: |
|
|
BIN 寫到: | to 小賴:
那qty空白的值應該不是.NULL.,
不然依上面所討論的早就有解答了... |
我例咧....
大哥 ...你是來亂的哦 ...  |
|
回頂端 |
|
 |
syntech
註冊時間: 2003-05-16 文章: 4249 來自: Taipei,Taiwan
第 12 樓
|
發表於: 星期一 七月 09, 2007 1:20 pm 文章主題: |
|
|
bin 兄所言, 意在弦外...... _________________ 如果公司有下列困擾:
1. 找不到便宜,快速,簡易的 生產排程軟體
2. 不知道如何快速排定 採購計劃
3. 成本抓不準,自己算比軟體算有用
4. 想學習系統規劃,想找系統架構的顧問
請聯絡我們,也許我們幫得上忙 |
|
回頂端 |
|
 |
nelsonchuang
註冊時間: 2003-09-04 文章: 563 來自: 臺灣
第 13 樓
|
發表於: 星期一 七月 09, 2007 1:40 pm 文章主題: |
|
|
select * from test where !isdigit(qty) 可以嗎? _________________ 大家好,請多指教 |
|
回頂端 |
|
 |
impotence

註冊時間: 2005-02-21 文章: 135 來自: Hong Kong
第 14 樓
|
發表於: 星期一 七月 09, 2007 1:46 pm 文章主題: |
|
|
isdigit() 是 "確定所指定的字元運算式之最左邊的字元是否是數字 (0 到 9)。"
qty 是 N, 不是 C , 如果 allt(str(qty)) , 則 0 = 空 ..... _________________ 一個常常忘記 Command 的人 ! |
|
回頂端 |
|
 |
nelsonchuang
註冊時間: 2003-09-04 文章: 563 來自: 臺灣
第 15 樓
|
發表於: 星期一 七月 09, 2007 3:01 pm 文章主題: |
|
|
impotence 寫到: | isdigit() 是 "確定所指定的字元運算式之最左邊的字元是否是數字 (0 到 9)。"
qty 是 N, 不是 C , 如果 allt(str(qty)) , 則 0 = 空 ..... |
呵,我都忘了這麼重要的事,它是給文字用的
那type('qty')呢?當它是NULL時,會不會等於U? _________________ 大家好,請多指教 |
|
回頂端 |
|
 |
|