卖逼视频免费看片|狼人就干网中文字慕|成人av影院导航|人妻少妇精品无码专区二区妖婧|亚洲丝袜视频玖玖|一区二区免费中文|日本高清无码一区|国产91无码小说|国产黄片子视频91sese日韩|免费高清无码成人网站入口

sql數(shù)據(jù)溢出怎么解決 SQL將expression轉(zhuǎn)換為數(shù)據(jù)類型datetime時(shí)出現(xiàn)算術(shù)溢出錯(cuò)誤?

SQL將expression轉(zhuǎn)換為數(shù)據(jù)類型datetime時(shí)出現(xiàn)算術(shù)溢出錯(cuò)誤?這個(gè)問(wèn)題,說(shuō)明 你的數(shù)據(jù)在 2010年1月29日以后的,其中有不符合規(guī)范的數(shù)據(jù),你需要檢查下。比如: 2011-2-29

SQL將expression轉(zhuǎn)換為數(shù)據(jù)類型datetime時(shí)出現(xiàn)算術(shù)溢出錯(cuò)誤?

這個(gè)問(wèn)題,說(shuō)明 你的數(shù)據(jù)在 2010年1月29日以后的,其中有不符合規(guī)范的數(shù)據(jù),你需要檢查下。比如: 2011-2-29 這種

access中sql語(yǔ)句出現(xiàn)溢出,將其中日期篩選條件去除或比較條件去除就能完整顯示,請(qǐng)高手幫忙解決下,謝謝?

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

select t.* from

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

from 生產(chǎn)記錄表

where 生產(chǎn)日期 between 日期1 and 日期2) t

where t.完成百分比=1

運(yùn)行這段代碼系統(tǒng)會(huì)要求輸入日期1和日期2,然后就會(huì)返回結(jié)果。

語(yǔ)句出錯(cuò)的原因是:生產(chǎn)記錄表的“合同數(shù)”字段下存在為0的值,用“完成數(shù)”除以0,當(dāng)然就會(huì)出錯(cuò)。

解決辦法:

首先必須確保字段“完成數(shù)”和“合同數(shù)”的數(shù)據(jù)類型必須是數(shù)字并且“合同數(shù)”不應(yīng)為0

將生產(chǎn)記錄表中所有“合同數(shù)”為0值修改為大于0,或者刪除“合同數(shù)”為0的記錄,這樣運(yùn)行以上SQL語(yǔ)句就不會(huì)出錯(cuò)了;

如果一定要允許“合同數(shù)”可以為0,則可以使用IIF函數(shù)對(duì)“合同數(shù)”為0的值進(jìn)行特別處理(下面代碼處理為百分百完成,因?yàn)榱闳蝿?wù)不用干就已經(jīng)完成)

select t.* from

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

from 生產(chǎn)記錄表

where 生產(chǎn)日期 between 日期1 and 日期2) t

where t.完成百分比=1

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

select t.* from

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

from 生產(chǎn)記錄表

where 生產(chǎn)日期 between 日期1 and 日期2) t

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