有關視圖里面使用函數的問題﹐請大家幫忙提供一點意見。

deadlove 2004-10-28 07:27:27
我有一個表sao001.dbf,現對這個資料表做了一個視圖叫sao001_a。此視圖有一個欄位wpd,
該欄位有三种值,分別為kwd,fwd,為空(字段下面無任何類容)這三种情況。現要求把為空的記錄給它賦值等于9,我使用iif(isnull(wpd),9,wpd) 始終無法得到想要得值﹐是否視圖里面無法使用iif函數﹐請問還有其它辦法沒有?新手向大家求教﹗謝謝﹗﹗﹗﹗﹗﹗﹗﹗
...全文
76 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
LAIYANGPJ 2004-10-29
  • 打赏
  • 举报
回复
你好好看一下你的语句,其查询结果应以是有两个WPD字段,"*"取出所有字段(其中已包含WPD字段,不过这次的值没有变动过),iif(isnull(wpd) or empty(wpd),9,wpd)又一次取出WPD字段,这次的值已安你的意思改过了.
deadlove 2004-10-29
  • 打赏
  • 举报
回复
SELECT *;iif(isnull(wpd) or empty(wpd),9,wpd)
FROM sao001 Sao001;
WHERE Sao001.qty_bal < 0;
AND ALLTRIM(Sao001.products) = "4";
ORDER BY Sao001.o_order, Sao001.month, Sao001.period, Sao001.case_no,;
Sao001.po_no, Sao001.lot_no

不能運行﹐請問那里錯了?
LAIYANGPJ 2004-10-29
  • 打赏
  • 举报
回复
:).........
JohnShen 2004-10-29
  • 打赏
  • 举报
回复
to deadlove(蹒跚慢步) ,你给我的邮件已回复,你需要将9写成'9',因为你的wpd字段为字符型。
deadlove 2004-10-29
  • 打赏
  • 举报
回复
select sao001.po_no,sao001.lot_no,sao001.case_no,iif(isnull(sao001.wpd) or empty(sao001.wpd),9,sao001.wpd) from sao001
運行視圖提示資料形態不對應
JohnShen 2004-10-28
  • 打赏
  • 举报
回复
综合两种情况,修改为:
iif(isnull(wpd) Or Empty(wpd),9,wpd)
xclzteb 2004-10-28
  • 打赏
  • 举报
回复
要分清楚wpd是为空(.null.)还是为空字符(empty())问题可能就出在这里。语句中看不到对这个“wpd”的操作?
deadlove 2004-10-28
  • 打赏
  • 举报
回复
SELECT *;
FROM sao001 Sao001;
WHERE Sao001.qty_bal < 0;
AND ALLTRIM(Sao001.products) = "4";
ORDER BY Sao001.o_order, Sao001.month, Sao001.period, Sao001.case_no,;
Sao001.po_no, Sao001.lot_no
這是原來視圖得sql語句,要求對其wpd欄位的值為空的記錄賦值為9,我不知用何种方法實現。

2,723

社区成员

发帖
与我相关
我的任务
社区描述
VFP,是Microsoft公司推出的数据库开发软件,用它来开发数据库,既简单又方便。
社区管理员
  • VFP社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧