-1
嘗試運行我的查詢時,我不斷收到此錯誤「ORA-01722:invalid number」。我已經重新編寫了幾次試圖繞過錯誤的查詢,但似乎無法做到這一點。必須將案例陳述拋出,以便按照GPA課程時間比較課程級別。當然有人對我的問題有一些提示或答案!在此先感謝Oracle SQL Developer「ORA-01722:invalid number」
select distinct
initcap(stride_last_name),
stride_first_name,
substr(stride_middle,1,1),
case
when nvl(sum(gpa_hours_earned),'0') between '0' and '29.9' then 'Freshmen'
when nvl(sum(gpa_hours_earned),'0') between '30' and '59.9' then 'Sophomore'
when nvl(sum(gpa_hours_earned),'0') between '60' and '89.9' then 'Junior'
when nvl(sum(gpa_hours_earned),'0') >= '90' then 'Senior'
else 'Freshmen'
end
感謝您的幫助,我很感激它!不幸的是,在收到你的建議之後,它仍然在向我拋出錯誤代碼。我不確定這個世界正在造成什麼!我刪除了這個獨特的,拿出了字符串文字,並按照你的建議重新格式化了case語句。有沒有下一步你可能認爲我可以試一試? – GMitchell
'gpa_hours_earned'實際上是數字列還是字符串?如果它是一個字符串,它幾乎肯定不會,並且可能包含無法轉換的錯誤值。 –
@GMitchell - 如果它是一個數字,你能編輯問題來顯示整個(原始)查詢,表格定義和完整的錯誤信息嗎?錯誤可能來自您未顯示的內容。 –