色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

將其中日期篩選條件去除或比較條件去除就能完整顯示

錢琪琛2年前11瀏覽0評論

將其中日期篩選條件去除或比較條件去除就能完整顯示?

樓主的SQL代碼基本上沒有大的毛病。以下寫法會更加規范一些(為子查詢表取一個別名):

select t.* from

(select 完成數/合同數 as 完成百分比,*

from 生產記錄表

where 生產日期 between 日期1 and 日期2) t

where t.完成百分比=1

運行這段代碼系統會要求輸入日期1和日期2,然后就會返回結果。

語句出錯的原因是:生產記錄表的“合同數”字段下存在為0的值,用“完成數”除以0,當然就會出錯。

解決辦法:

首先必須確保字段“完成數”和“合同數”的數據類型必須是數字并且“合同數”不應為0

將生產記錄表中所有“合同數”為0值修改為大于0,或者刪除“合同數”為0的記錄,這樣運行以上sql語句就不會出錯了;

如果一定要允許“合同數”可以為0,則可以使用IIF函數對“合同數”為0的值進行特別處理(下面代碼處理為百分百完成,因為零任務不用干就已經完成)

select t.* from

(select IIF(合同數=0,1,完成數/合同數) as 完成百分比,*

from 生產記錄表

where 生產日期 between 日期1 and 日期2) t

where t.完成百分比=1

當然你也可以處理為0或其他什么的,那就要看如何理解了。以下處理為文本“未知百分比”

select t.* from

(select IIF(合同數=0,'未知百分比',完成數/合同數) as 完成百分比,*

from 生產記錄表

where 生產日期 between 日期1 and 日期2) t

where t.完成百分比='1'