 |
VFP 愛用者社區 本討論區為 Visual Foxpro 愛用者經驗交流的地方, 請多多利用"搜尋"的功能, 先查看看有無前例可循, 如果還有不懂的再發問. 部份主題有附加檔案, 須先註冊成為社區居民才可以下載.
|
上一篇主題 :: 下一篇主題 |
發表人 |
內容 |
Patrick Wu
註冊時間: 2007-01-03 文章: 228 來自: 台北市
第 1 樓
|
發表於: 星期五 六月 08, 2007 11:27 am 文章主題: SQL 查詢 指令相同 為何查詢結果是亂碼 |
|
|
圖一的指令為:
SELECT DISTINCT POS_COD , POS_CTY , POS_ALL ;
FROM POS_CALL ;
WHERE "台中市" $ POS_CTY ;
ORDER BY POS_CTY =============>OK
圖二的指令為:
SELECT DISTINCT SUBSTR(POS_CTY , AT("市" , POS_CTY) + 2 , AT("區" , POS_CTY) - AT("市" , POS_CTY) ) ;
FROM POS_CALL ;
WHERE "台中市" $ POS_CTY ====>取出 區 如 中區 西屯區 ===> OK
圖三的指令為:
SELECT DISTINCT SUBSTR(POS_CTY , AT("縣" , POS_CTY) + 2 , AT("鄉" , POS_CTY) - AT("縣" , POS_CTY) ) ;
FROM POS_CALL ;
WHERE "彰化縣" $ POS_CTY ====>取出 鄉 ===> 亂碼 ???? |
|
回頂端 |
|
 |
Erwin
註冊時間: 2003-03-28 文章: 97 來自: 台北
第 2 樓
|
發表於: 星期五 六月 08, 2007 1:36 pm 文章主題: |
|
|
SELECT DISTINCT PADR( SUBSTR(POS_CTY , AT("縣" , POS_CTY) + 2 , AT("鄉" , POS_CTY) - AT("縣" , POS_CTY) ), 10, ' ') ;
FROM POS_CALL ;
WHERE "彰化縣" $ POS_CTY
會出現亂碼是因它以取出合乎資料的第一筆欄寬為準, 也就是第一筆只有一個 BYTE吧。
所以強制設定取出結果的長度才不會出錯 |
|
回頂端 |
|
 |
Patrick Wu
註冊時間: 2007-01-03 文章: 228 來自: 台北市
第 3 樓
|
發表於: 星期五 六月 08, 2007 2:07 pm 文章主題: |
|
|
合乎資料的第一筆欄寬為準 => 謝謝 Erwin 的指導 我再試試 |
|
回頂端 |
|
 |
Patrick Wu
註冊時間: 2007-01-03 文章: 228 來自: 台北市
第 4 樓
|
發表於: 星期五 六月 08, 2007 2:08 pm 文章主題: |
|
|
謝謝 Erwin 的指導 測試相當的成功 謝謝 |
|
回頂端 |
|
 |
|
|
您 無法 在這個版面發表文章 您 無法 在這個版面回覆文章 您 無法 在這個版面編輯文章 您 無法 在這個版面刪除文章 您 無法 在這個版面進行投票 您 無法 在這個版面附加檔案 您 無法 在這個版面下載檔案
|
|