2013-10-07 41 views
3

我得到無效數字異常如何使用MODWHERE子句中,想根據ID更新偶數行或奇數行。MOD運算符在哪裏條款

update employee set respstr1 = 'EP' where mid = 7246 and (mod(id/2) = 1) 
+0

如何使用['ROW_NUMBER()' ](http://docs.oracle.com/cd/B19306_01/server.102/b14200/functions137.htm)而不是'id'?我懷疑它總是保證ID是連續的。 –

+3

首先,'mod'有兩個參數 - 'mod(id,2)= 1'。但是你得到的錯誤意味着你被視爲數字的一列(或多列)實際上有一些非數字字符。涉及的列的數據類型是什麼? –

回答

7

對mod正確的語法是

mod(id,2) 
+1

[這是MOD()函數的文檔](http://docs.oracle.com/cd/B19306_01/server.102/b14200/functions088.htm)。 –

+0

感謝您的幫助。 – sunleo