您好,登錄后才能下訂單哦!
本篇內(nèi)容主要講解“mysql如何判斷是否是數(shù)字類型”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“mysql如何判斷是否是數(shù)字類型”吧!
在mysql中,可以利用REGEXP運算符判斷數(shù)據(jù)是否是數(shù)字類型,語法為“String REGEXP '[^0-9.]'”;該運算符是正則表達式的縮寫,若數(shù)據(jù)字符中含有數(shù)字時,返回的結(jié)果是true,反之返回的結(jié)果是false。
本教程操作環(huán)境:windows10系統(tǒng)、mysql8.0.22版本、Dell G3電腦。
采用mysql的 REGEXP運算符
REGEXP運算符,是正則表達式(regular expression)的縮寫,正則表達式在搜索字符串時非常強大,下面是關(guān)于它的應用
{String} REGEXP '[^0-9.]'
前面的字符串是我們要做判斷的, 后面的字符串是mysql的正則表達式,意思是 匹配不是數(shù)字或者小數(shù)點的字符。
如果String中含有不是0-9之間的數(shù)字或者是小數(shù)點時,返回true ,反之則返回false。
用法
select ('123a' REGEXP '[^0-9.]');
--‘123a'中含有字符'a' 輸出結(jié)果為1 mysql中常量true輸出為1 false輸出為0
select * from tablename where (name REGEXP '[^0-9.]') = 1
查詢name全為數(shù)字的記錄
注意:如果字符串中有空格,也會匹配到正則表達式,返回1。如果是要去掉兩端的空格,就要將判斷的字符串,就要對字符串使用 trim()函數(shù)了。
#查詢speed列不是數(shù)字的數(shù)據(jù)
select * from standard_csbi_service_tree_1d_full where (‘2134’ REGEXP ‘[^0-9.]’)=1;
#查詢speed列是數(shù)字的數(shù)據(jù)
select * from standard_csbi_service_tree_1d_full where (speed REGEXP ‘[^0-9.]’)=0;
到此,相信大家對“mysql如何判斷是否是數(shù)字類型”有了更深的了解,不妨來實際操作一番吧!這里是億速云網(wǎng)站,更多相關(guān)內(nèi)容可以進入相關(guān)頻道進行查詢,關(guān)注我們,繼續(xù)學習!
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。