1. 程式人生 > >ORACLE中關於表的一些特殊查詢語句

ORACLE中關於表的一些特殊查詢語句

2018-11-22 10:57 by 瀟湘隱者, ... 閱讀, ... 評論, 收藏, 編輯

1: 如何判斷欄位的值裡面:那些資料包含小寫字母或大小字母

判斷欄位NAME的值裡面有小寫字母的記錄

方式1:

SELECT NAME FROM TEST

WHERE regexp_like(NAME,'[[:lower:]]');

方式2

SELECT NAME FROM TEST

WHERE regexp_like(NAME,'[a-z]');

判斷欄位NAME的值裡面有大寫字母的記錄

方式1:

SELECT NAME FROM TEST

WHERE regexp_like(NAME,'[[:upper:]]');

方式2:

SELECT NAME FROM TEST

WHERE regexp_like(NAME,'[A-Z]');

2: 如何判斷欄位裡面的值裡面包含特殊字元

例如,我想找出表TEST的欄位NAME裡面包含特殊字元&的相關記錄

SELECT NAME FROM ESCMOWNER.TEST

WHERE regexp_like(NAME,'[&]');

3: 如何判斷欄位裡面的值前面或後面有空格

1:欄位前面或後面存在空格的記錄資訊:

SELECT * FROM TEST WHERE

length(NAME) > length(trim(NAME))

2:欄位值前面存在空格的記錄資訊:

SELECT * FROMESCMOWNER.TEST

WHERE LENGTH(LTRIM(NAME)) < LENGTH(NAME);

3:欄位值後面存在空格的情況:

SELECT * FROMESCMOWNER.TEST

WHERE LENGTH(RTRIM(NAME)) < LENGTH(NAME);

4:如何判斷欄位裡面的值裡面包含空格

一直以來,以為判斷欄位裡面包含空格(空格位於任意位置)是一件特難、特麻煩的事情,但是在ORACLE的正則表示式函式REGEXP_LIKE面前,一切不在話下。

SELECT * FROMTESTWHERE REGEXP_LIKE(NAME, '( )+');

後續如有遇到一些特殊查詢SQL,會統一總結在這一篇文章裡面,後續會繼續追加相關內容!