如何將表中的包含特殊字元的髒資料查出來?
語法:
instr(string, substring[引數說明:]])
第1個引數表示:必選項。將要被檢索的字串,可以是char,varchar2,nchar,nvarchar2,clob或nclob等型別;
第2個引數表示:必選項。將要查詢的字串,可以是char,varchar2,nchar,nvarchar2,clob或nclob等型別;
第3個引數表示:可選項。從字串第幾(start_position)位開始搜尋; 預設值為1;正數,從前往後查詢;負數,從後往前查詢;
返回值:返回substring在string的位置;如果在字串中找不到substring,將返回0。
說明:字串中的第乙個位置是1。
總資料
兩個查詢結果一致,由此可見:
該錶不存在重複資料;
id_card欄位在該錶的資料都是唯一的。
正確實現:
分析:查詢的時候至少要攜帶乙個唯一字段(主鍵或id_card),為什麼?
其一:姓名肯定有重複的,但又不能使用關鍵字union進行去重,會導致資料缺失;
其二:姓名可能包含好幾個特殊字元,每判斷一次,就會疊加一次,會多於實際資料。
方式二:使用like關鍵字實現。
錯誤方式:
錯在哪?
當髒資料都包含所有特殊字元時,可以使用該方法。
正確方式:
見文末推薦
oracle判斷是否包含字串
一 oracle判斷是否包含字串的方法 1 contains,contains用法如下 select from students where contains address,beijing 但是,使用contains謂詞有個條件,那就是列要建立索引,也就是說如果上面語句中students表的add...
oracle判斷是否包含字串的方法
首先想到的就是contains,contains用法如下 sql view plain copy select from students where contains address,beijing 但是,使用contains謂詞有個條件,那就是列要建立索引,也就是說如果上面語句中students...
oracle判斷是否包含字串的方法
首先想到的就是contains,contains用法如下 sql view plain copy select from students where contains address,beijing 但是,使用contains謂詞有個條件,那就是列要建立索引,也就是說如果上面語句中students...