sql查詢字段中是否含有字母/數字/符號


目前只找到一中方法查詢字段中是否包含小寫字母

思路:將字段分割成一個個字符,然后用ASCII碼篩選出有小寫字母的記錄

數據:

ID CH
1 10IU2
2 5445
3 APPlEPIe

   

 

 

 

 

CREATE VOLATILE TABLE C (
C1 INTEGER
) PRIMARY INDEX(C1)
;
INSERT INTO C VALUES('1');
INSERT INTO C VALUES('2');
INSERT INTO C VALUES('3');
INSERT INTO C VALUES('4');
INSERT INTO C VALUES('5');
INSERT INTO C VALUES('6');
INSERT INTO C VALUES('7');

select
    a.id
    ,a.ch
from a a
inner join c c
on length(a.ch) >= c.c1
group by 1,2
having max(case when ascii(substr(a.ch,c1,1)) between '97' and '122' then '1' else '0' end) = '1'--小寫字母的ascii碼范圍
;
--用where條件也可以
select
  a.id
  ,a.ch
from a a
inner join c c
on length(a.ch) >= c.c1
where ascii(substr(a.ch,c1,1)) between '97' and '122'
group by 1,2
 
        

  


免責聲明!

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



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