ようこそ (Jyokoso) MY BLOG

いらっしゃいませ (hajimemashite) สำหรับผู้เข้าใหม่นะค่ะ ^^V

06 มิถุนายน 2555

วิธี check string กับnumeric



NVL2('Which string?', 'Yes', 'No')  NVL2  ไว้เช็คค่าที่เราส่งเข้ามาว่าเป็น string หรือเปล่า
ถ้า not-null = yes หรือแล้วเราจะแทนค่า
แต่ถ้าเป็นค่า null จะแืทน No หรือแล้วแต่ว่าเราจะกำหนดให้เป็นอะไร

TRANSLATE('in-put','A1234567890','A') ค่าที่เราจะแปลง ถ้าเป็นตัวเลข จะได้ค่า NULL ออกมา แต่ถ้ามี charecter ผสมอยู่จะแสดง charecter ที่ผสมอยู่นั้น ออกมาเช่น


select TRANSLATE('123I LOVE U','A1234567890','A')
from dual
>> I LOVE U



ดังนั้นถ้าเราจะ ค่า in put มาเช็คว่าเป็นตัว charecter หรือเปล่าก็ check แบบนี้ได้
select DECODE(NVL2(TRANSLATE(NVL(&in-put,'A'), 'A1234567890','A'), 'F', 'T'),'T',&in-put,0)
from dual