六月婷婷综合激情-六月婷婷综合-六月婷婷在线观看-六月婷婷在线-亚洲黄色在线网站-亚洲黄色在线观看网站

明輝手游網(wǎng)中心:是一個(gè)免費(fèi)提供流行視頻軟件教程、在線學(xué)習(xí)分享的學(xué)習(xí)平臺(tái)!

mysql中用正則表達(dá)式進(jìn)行搜索圖文說明教程(一)

[摘要]本文專題將學(xué)習(xí)如何在MySQL where子句內(nèi)使用正則表達(dá)式來跟好的控制數(shù)據(jù)過濾。有關(guān)正則表達(dá)式介紹前兩章中的過濾例子允許用匹配、比較和通配操作符尋找數(shù)據(jù)。對(duì)于基本的過濾(或者甚至是某些不那么基本的過濾),這樣就足夠了。但隨著過濾條件的復(fù)雜性的增加,where子句本身的復(fù)雜性也有不要增加。這也就...
本文專題將學(xué)習(xí)如何在MySQL where子句內(nèi)使用正則表達(dá)式來跟好的控制數(shù)據(jù)過濾。

有關(guān)正則表達(dá)式介紹

前兩章中的過濾例子允許用匹配、比較和通配操作符尋找數(shù)據(jù)。對(duì)于基本的過濾(或者甚至是某些不那么基本的過濾),這樣就足夠了。但隨著過濾條件的復(fù)雜性的增加,where子句本身的復(fù)雜性也有不要增加。

這也就是正則表達(dá)式變得有用的地方。正則表達(dá)式是用來匹配文本的特殊的串(字符集合)。如果你想從一個(gè)文本文件中提取出電話號(hào)碼,可以使用正則表達(dá)式。如果你需要查找名字中間有數(shù)字的所有文件,可以使用一個(gè)正則表達(dá)式。如果你想在一個(gè)文板塊中找到所有重復(fù)的單詞,可以使用正則表達(dá)式。如果你想途歡一個(gè)頁面中的所有URL為這些URL的實(shí)際html連接,也可以使用正則表達(dá)式。

所有又累的程序設(shè)計(jì)語言、文本編輯器、操作系統(tǒng)等都支持正則表達(dá)式。有件事的程序員和網(wǎng)絡(luò)管理員已經(jīng)關(guān)注作為他們技術(shù)工具重要內(nèi)容的正則表達(dá)式很長時(shí)間了。

正則表達(dá)式用正則表達(dá)式語言來建立,正則表達(dá)式語言是用來完成剛討論的所有工作及更多工作的一種特殊語言、與任意語言一樣,正則表達(dá)式具有你必須學(xué)習(xí)的特殊的語法和指令。

既然正則表達(dá)式這么有用,那么正則表達(dá)式和MySQL有什么關(guān)系呢?已經(jīng)說過,正則表達(dá)式的作用是匹配文本,講一個(gè)模式(正則表達(dá)式)與一個(gè)文本串進(jìn)行比較。MySQL用where子句對(duì)正則表達(dá)式提供了初步的支持,允許你指定正則表達(dá)式,過濾select檢索出的數(shù)據(jù)。

使用MySQL正則表達(dá)式

基本字符匹配

我們從一個(gè)非常簡單的例子開始。下面的語句檢索列prod_name包含文本1000的所有行:

select prod_name from products where prod_name regexp ‘1000’ order by prod_name;

QQ截圖20170502181232.png

除了關(guān)鍵字like被regexp替代以外,這條語句看上去非常像使用like的語句。它告訴MySQL:regexp后所跟的東西作為正則表達(dá)式(與文字正文1000匹配的一個(gè)正則表達(dá)式)處理。

為什么要費(fèi)力地使用正則表達(dá)式?在剛才的例子中,正則表達(dá)式確實(shí)沒有帶來多少好處,不過請(qǐng)考慮下面的例子:

select prod_name from products where prod_name regexp '.000'order by prod_name;

QQ截圖20170502181245.png

這里使用了正則表達(dá)式.000。.是正則表達(dá)式語言中一個(gè)特殊的字符。它表示匹配任意一個(gè)字符,因此,1000和2000都匹配且返回

當(dāng)然,這個(gè)特殊的例子也可以用like和通配符來完成。

在like與regexp之間有一個(gè)重要的差別。請(qǐng)看下面兩條語句:

select prod_name from products where prod_name like '1000' order by prod_name;

select prod_name from products where prod_name regexp '1000' order by prod_name;

如果執(zhí)行上述兩條語句,會(huì)發(fā)現(xiàn)第一條語句不會(huì)返回?cái)?shù)據(jù),而第二條語句返回一行,為什么?

like匹配整個(gè)列。如果被匹配的文本在列值中出現(xiàn),like將不會(huì)找到它,相應(yīng)的行也不被返回(除非使用通配符)。而regexp在列值內(nèi)進(jìn)行匹配,如果被匹配的文本在列值中出現(xiàn),regexp將會(huì)找到它,相應(yīng)的行將被返回。這是一個(gè)非常重要的差別。

那么,regexp能不能用來匹配整個(gè)列值,起到與like相同的作用?答案是坑定的,使用^和$定位符即可。

以上就是mysql中用正則表達(dá)式進(jìn)行搜索教程(一)的詳細(xì)內(nèi)容,更多請(qǐng)關(guān)注php中文網(wǎng)其它相關(guān)文章!


學(xué)習(xí)教程快速掌握從入門到精通的SQL知識(shí)。




主站蜘蛛池模板: 日本美女视频韩国视频网站免费 | 青草免费免费观看视频在线 | 图片一区| 色网站免费观看 | 四虎最新永久免费网址 | 欧美综合色 | 日本中文一二区有码在线观看 | 色影影院| 日本一区二区三区在线观看视频 | 色无极亚洲影院 | 夜鲁鲁鲁夜夜综合视频欧美 | 日韩一级精品视频在线观看 | 日韩在线观看视频免费 | 亚洲综合精品 | 欧美特黄a级高清免费看片 欧美特黄a级高清免费大片 | 日本不卡高清视频 | 最新国语自产精品视频在 | 日本国产欧美 | 婷婷色在线播放 | 日本福利片在线观看 | 色综合色狠狠天天久久婷婷基地 | 亚洲欧美综合在线观看 | 中日韩在线视频 | 日本视频中文字幕 | 日韩aa在线观看 | 日本一区二区三区在线观看视频 | 欧美性活一级视频 | 日韩欧美精品 | 亚洲欧美日韩成人一区在线 | 日韩激情淫片免费看 | 日本乱中文字幕系列在线观看 | 亚洲国产亚洲综合在线尤物 | 香蕉免费一级视频在线观看 | 日本韩国视频在线观看 | 婷婷狠狠五月天小说免费 | 日日插夜夜爽 | 亚洲福利影视 | 欧美一区二区三区免费观看视频 | 亚洲天天综合 | 天天操天天爱天天干 | 最新亚洲情黄在线网站 |