case when里的like功能 ////// 截取(substr)


case when里的like功能 
假如要用到case when又要用到like這樣的功能,即如果字符串包含‘語文’就怎么怎么樣,包含‘數學’就怎么怎么樣,包含‘英語’就怎么怎么樣,like是用於where中的,放在case when里面是無效的,可以用instr()這個函數來查找這些字符出現的位置,代替like的功能,這樣寫就好吶。 
case when instr(t.str,’語文’) > 0 then 0 
when instr(t.str,’語文’) > 0 then 1 
when instr(t.str,’語文’) > 0 then 2 
else 3 end 
另外在多表查詢時,一開始我喜歡用in,在執行了一段時間后報出了ora-1幾幾幾數字類型不正確的錯誤,分析了一下估計是in的括號里的數據太多的緣故,所以盡量不要用in,用關聯查詢就可以了。

 

  1. substr('ABCDEFG', 2, 3) = 'BCD'     
  2. substr('ABCDEFG', -2)  = 'FG'   
  3. substr('ABCDEFG', -4)  = 'DEFG'  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM