下載吧 - 綠色安全的游戲和軟件下載中心

軟件下載吧

當(dāng)前位置:軟件下載吧 > 技術(shù)開發(fā) > 數(shù)據(jù)庫 > PostgreSQL數(shù)據(jù)庫基礎(chǔ) 字符切割 substring 函數(shù)的用法舉例

PostgreSQL數(shù)據(jù)庫基礎(chǔ) 字符切割 substring 函數(shù)的用法舉例

時間:2024-02-03 17:42作者:下載吧人氣:23

作為當(dāng)前最強(qiáng)大的開源數(shù)據(jù)庫,Postgresql(以下簡稱pg)對字符的處理也是最為強(qiáng)大的,首先他也有substr,trim等其他數(shù)據(jù)庫都有的普通函數(shù),這里我們介紹他更強(qiáng)大的一個函數(shù)substring,可以像python,java等編程語言一樣使用正則表達(dá)式,強(qiáng)大到極點

在此之前我們先了解一下正則表達(dá)式最基礎(chǔ)的四個

%代表一個或多個字符 _代表一個字符 ^代表字符前 $代表字符后

pg的官網(wǎng)上對其用法是下面這樣,但不夠清楚了然,下面我一一解釋

PostgreSQL數(shù)據(jù)庫基礎(chǔ) 字符切割 substring 函數(shù)的用法舉例

第一個

用法和substr差不多,是指定序列,from 2 for 3 是從序列為2的位置開始取3個字符。例子如上

第二個

例子用法的意思是:$代表字符后, 一個點代表一個字符,即從最末尾開始選擇3個字符,同樣的如果是substring(‘Thomas’ from ‘^….’) 則結(jié)果是Thom

第三個

用法是最實用的,也是最難理解的,先大致理解:

from ‘%#”o_a#”_’ for ‘#’ 中from是開始(包含),for后面跟的是逃逸,即結(jié)束

這個例子的意思是我想要o_a的組合字符,其中o_a的多個(%)字符不要,后面的一個(_)字符不要,這里要注意的是切分后面剩多少字符寫幾個_

這里的架構(gòu)可以理解為固定的,即 from ‘#”#”‘ for ‘#’ #” 是分割字符,可以在#”前中后限定選擇你最想要的字符

下面用實例來講解一下第三個用法

需求:下圖的查詢結(jié)果是查的日志表,我想要【】里的數(shù)據(jù),由于【】里字符長度不固定,又只能用sql來切割,因此只能使用第三種方法來獲取【】里的數(shù)據(jù)

PostgreSQL數(shù)據(jù)庫基礎(chǔ) 字符切割 substring 函數(shù)的用法舉例

解決1:

根據(jù)上面的思想,我可以寫這樣的架構(gòu)’【#”%#”_______’ FOR ‘#’,試著運行一下

SELECT
SUBSTRING (
log_txt
FROM
‘【#”%#”_______’ FOR ‘#’
) log_txt
FROM
operation_log
WHERE
log_type = ’15’
LIMIT 3

標(biāo)簽MySQL,技術(shù)文檔,數(shù)據(jù)庫,PostgreSQL

相關(guān)下載

查看所有評論+

網(wǎng)友評論

網(wǎng)友
您的評論需要經(jīng)過審核才能顯示

熱門閱覽

最新排行

公眾號

主站蜘蛛池模板: 人妻少妇精品视频一区二区三区| 欧美一区二区三区精华液| 成人毛片18女人毛片免费视频未 | 领导边摸边吃奶边做爽在线观看 | 亚洲色偷偷综合亚洲av78| 一级国产黄色片| 精品久久久久久久免费人妻| 怡红院成人影院| 动漫人物将机机插曲3d版视频 | 国产三级全黄在线观看| 国产亚洲av综合人人澡精品| 久久精品综合电影| 成人污视频网站| 日本边添边摸边做边爱的视频| 国产叼嘿久久精品久久| 久久亚洲精品视频| 翁熄性放纵交换| 好妈妈5高清中字在线观看| 健身私教干了我好几次| 99久无码中文字幕一本久道| 水蜜桃视频在线观看免费| 国产精品视频色拍拍| 亚洲一区二区三区丝袜| 99视频精品国在线视频艾草| 日本视频www色| 四虎国产永久免费久久| www.四虎com| 欧美色图校园春色| 国产福利电影在线观看| 久久天天躁狠狠躁夜夜免费观看| 色综合久久久久久久| 婷婷色在线播放| 亚洲男人的天堂在线播放| 亚洲综合丁香婷婷六月香| 日本黄色影院在线观看| 啊用力太猛了啊好深视频| www884aa| 欧美国产亚洲一区| 国产午夜精品久久久久免费视 | 一二三四社区在线中文视频| 深夜放纵内射少妇|