access中IIF條多件表示式的問題,我需要在表中做計算,用到表示式IIF,因為剛剛學習ACCESS

2021-03-22 00:48:09 字數 3559 閱讀 1626

1樓:匿名使用者

條件太多的情況下應該放棄使用多層巢狀iif函式這種解決方式,因為一則表示式會非常冗長,二則巢狀層數過多可能超出資料庫規格限制而報錯。

建議但對建立一個運輸公司**對照表並錄入相應資料,然後在sql查詢中運用dlookup函式檢索出相應簡碼。例如建立如下**表:

**表二位碼 一位碼

xj a

rx b

lw c

19 d

... ..

利用dlookup函式檢索出相應物流公司一位簡碼dlookup("一位碼","**表","二位碼=left([單號],2)")

access 中的iif使用

2樓:匿名使用者

可以這樣寫4層巢狀iif函式表示式:

iif(isnull(bss專案編號) and isnull(固網專案編碼),"bss和固網專案均為空",iif(isnull(bss專案編號) and not isnull(固網專案編碼),"新建工程無bss號",iif(not isnull(bss專案編號) and isnull(固網專案編碼),"開戶無bss編號",iif(bss專案編號=固網專案編碼,"匹配成功","專案亂掛"))))

寫成sql查詢語句:

select bss專案編號,固網專案編碼,

iif(isnull(bss專案編號) and isnull(固網專案編碼),'bss和固網專案均為空',

iif(isnull(bss專案編號) and not isnull(固網專案編碼),'新建工程無bss號',

iif(not isnull(bss專案編號) and isnull(固網專案編碼),'開戶無bss編號',

iif(bss專案編號=固網專案編碼,'匹配成功','專案亂掛'))))

as 專案使用情況 from 表名;

樓主要求[固網專案編碼]的值為空那麼輸出的值為「開戶無bss編號」,我覺得似乎不太準確,判斷為「無固網專案編碼」也許更準確;

另外還存在[bss專案編號]和[固網專案編碼]兩項同時為空的情況,提問裡並未提及,但是表示式必須考慮這種情況存在的可能,因此我在上述表示式裡也做了相應判斷。

access中iif函式套用時間函式的問題

3樓:匿名使用者

樓主的表示式「iif([機加完成]=-1,now(),null)」在語法上完全正確、沒有問題,按理是可以實現的。在access裡該表示式執行不成功,應該受到其他原因影響所致。導致不成功的原因很多,這裡很難一一列舉。

請告知該表示式使用的環境(例如窗體還是查詢裡等等)、報錯提示資訊等,以便做進一步分析。

access中的iif函式的使用問題

4樓:懶蟲

分成二步來完成,即先取出select top 1 cardkind from mem_members的值,然後再執行update

1、在access中用巨集來完成。

2、在其它的專程式設計呼叫環境中,可以屬先賦值給變數,然後再傳入update語句

另外你外部的iif根本就不起作用,iif(***<>'次卡',-1,0)>0恆不成立,因為iif(***<>'次卡',-1,0)的取值範圍為-1, 0 恆不大於0,所以無論如何,你的最終表示式的結果都是-1

access中關於iif函式的使用疑問

5樓:

公司名的格式不對吧。isnull(【公司名】)試試。

6樓:

格式有問題!

在access查詢裡面,欄位名稱像你的"公司名"是不用中括號的,還有你的那個計算欄位也不對,不用引號,因為引號表示引用文字值,而文字是不可以用來計算的!

所以正確的寫法應該是:iif(公司名="1","",金額*15) as 新金額

已經測試通過!

access iif語句出現問題

7樓:access中國

使用iif,進行太多條件判斷是很複雜的,建立 您使用switch函式來替換之,會讓查詢 簡單很多

一般iif是兩個條件,或最多3個,如果超過3個,最好使用access的switch函式

這是根據我們【access中國論壇】多年的程式設計經驗得出來的,您可以嘗試一下,也可到論壇去嘗試找找問題的答案

或者是內容裡多了),或少了,號之類

8樓:匿名使用者

這麼多iif看得暈了,給你一點建議,因為沒看完你的我也不知道可不可行.

首先:"閥值相關性"別用"正向""負向",用"1"和"-1"

"指標值""低風險""高風險"分別乘上"閥值相關性"後再判斷,估計能省去一半的"iif"

9樓:常山大寶

把公式中的符號 & 換成 and 試試。

10樓:析鵬蒿鵬翼

iif(isnull(forms!工資發放查詢!職工id),"*",forms!工資發放查詢!職工id)--指的是判斷職員id是否為空,為空的話返回*,否則返回職員id

例如:如果

measures.currentmember是空單元,則下面的字串返回字串

"yes",否則返回字串

"no":

iif(isempty(measures.currentmember),

"yes",

"no")

access 查詢語句 iif怎麼返回值?

11樓:匿名使用者

1、iif嚴格說是一個函式。

2、該函式格式為:iif(條件

表示式,表示式1,表示式2)。

3、該函式運算方法:當條件表示式為真時,表示式1的值作為函式返回值;當條件表示式為假時,表示式2的值作為函式返回值。

4、舉例說明:iif(3>5,5+3,5-3),由於3>5結果為假,所以返回5-3的值,即為2。

12樓:匿名使用者

access中的iif其實就是if一樣的效果只是iif用在查詢中,而if用於**中

iif格式

iif(表示式為真,執行真,執行假)

比如iif(1=1,2,3) 返回值為2,因為1=1為真

關於access中iif函式的問題

13樓:匿名使用者

試試這樣吧

切換到sql檢視這樣

select  姓名,iif(性別='男','先生','小姐') as 稱謂 from 學生簡況表

請問關於access中iif函式的問題:

14樓:機智的小白

是不是因為引號的問題,一般加引號是說明裡面是字串的,aceess不太懂,只是給個建議,希望能夠幫到你

15樓:解0人

select iif(條件,1-1,1+1) as *** from tablename...

EXCEL判斷一行數值中滿足某一條件的數值個數(比如A1至O1中大於21的數值有幾個)

這樣也行 sum if a1 o1 21,1,按ctrl 回車 sum if a1 o1 21,1,要按ctrl shift 回車,因為這是個陣列公式。或者用 countif a1 o1,21 countif a1 o1,21 countif a1 o1,21 excel怎麼求一列資料中某一位的數值...

誤工費賠償中工資條是影印件可以嗎公司不給原件

你好,可以的。但必須加蓋公司公章證明因傷誤工收入減少,否則法院不會採信。若幫到請採納,謝謝 保險公司在賠償交通事故中護理人員誤工費所需要的工資單蓋公司公章可以嗎 都可以的,護理人員不是必須家政公司的 護理人員有收入的,參照誤工費的規定計算的 護理人員沒有收入或者僱傭護工的參照當地護工從事同等級別護理...

班中的一件事(班裡或校園裡)表達出自己的真實情感,是一件小事。(不要寫我摔傷什麼的)

生活就像一場電影,一個個精彩的小鏡頭,構成了一場有趣的電影.那一個個精彩的小鏡頭就是生活中的小事,只要有了這一件件小事,生活就會變得多姿多采,在這一個個小鏡頭中,有一個鏡頭,它令我終生難忘.那是一個烏雲密佈的傍晚,學校剛剛放學,我走出教師,往往天空,有看看自己的雙手,心想 這是什麼鬼天氣呀 說變臉就...