婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > PostgreSQL教程(六):函數和操作符詳解(2)

PostgreSQL教程(六):函數和操作符詳解(2)

熱門標簽:海豐有多少商家沒有地圖標注 打電話智能電銷機器人授權 美容工作室地圖標注 重慶自動外呼系統定制 外呼調研系統 合肥公司外呼系統運營商 漯河外呼電話系統 辦公外呼電話系統 地圖標注和圖片名稱的區別

六、模式匹配:

    PostgreSQL中提供了三種實現模式匹配的方法:SQL LIKE操作符,更近一些的SIMILAR TO操作符,和POSIX-風格正則表達式。
    1. LIKE:
 

復制代碼 代碼如下:

    string LIKE pattern [ ESCAPE escape-character ]
    string NOT LIKE pattern [ ESCAPE escape-character ]
 

    每個pattern定義一個字串的集合。如果該string包含在pattern代表的字串集合里,那么LIKE表達式返回真。和我們想象的一樣,如果LIKE返回真,那么NOT LIKE表達式返回假,反之亦然。在pattern里的下劃線(_)代表匹配任何單個字符,而一個百分號(%)匹配任何零或更多字符,如:
 
復制代碼 代碼如下:

    'abc' LIKE 'abc'     true
    'abc' LIKE 'a%'     true
    'abc' LIKE '_b_'    true
    'abc' LIKE 'c'        false 
 

    要匹配文本的下劃線或者百分號,而不是匹配其它字符,在pattern里相應的字符必須前導轉義字符。缺省的轉義字符是反斜杠,但是你可以用ESCAPE子句指定一個。要匹配轉義字符本身,寫兩個轉義字符。我們也可以通過寫成ESCAPE ''的方式有效地關閉轉義機制,此時,我們就不能關閉下劃線和百分號的特殊含義了。
    關鍵字ILIKE可以用于替換LIKE,令該匹配就當前的區域設置是大小寫無關的。這個特性不是SQL標準,是PostgreSQL的擴展。操作符~~等效于LIKE, 而~~*對應ILIKE。還有!~~和!~~*操作符分別代表NOT LIKE和NOT ILIKE。所有這些操作符都是PostgreSQL特有的。

    2. SIMILAR TO正則表達式:
    SIMILAR TO根據模式是否匹配給定的字符串而返回真或者假。
 

復制代碼 代碼如下:

    string SIMILAR TO pattern [ESCAPE escape-character]
    string NOT SIMILAR TO pattern [ESCAPE escape-character]
 

    它和LIKE非常類似,支持LIKE的通配符('_'和'%')且保持其原意。除此之外,SIMILAR TO還支持一些自己獨有的元字符,如:   
    1). | 標識選擇(兩個候選之一)。
    2). * 表示重復前面的項零次或更多次。
    3). + 表示重復前面的項一次或更多次。
    4). 可以使用圓括弧()把項組合成一個邏輯項。
    5). 一個方括弧表達式[...]聲明一個字符表,就像POSIX正則表達式一樣。
    見如下示例:
 
復制代碼 代碼如下:

    'abc' SIMILAR TO 'abc'           true
    'abc' SIMILAR TO 'a'              false
    'abc' SIMILAR TO '%(b|d)%'  true
    'abc' SIMILAR TO '(b|c)%'     false
 

    帶三個參數的substring,substring(string from pattern for escape-character),提供了一個從字串中抽取一個匹配SQL正則表達式模式的子字串的函數。和SIMILAR TO一樣,聲明的模式必須匹配整個數據串,否則函數失效并返回NULL。為了標識在成功的時候應該返回的模式部分,模式必須出現后跟雙引號(")的兩個轉義字符。匹配這兩個標記之間的模式的字串將被返回,如:
    MyTest=# SELECT substring('foobar' from '%#"o_b#"%' FOR '#'); --這里#是轉義符,雙引號內的模式是返回部分。
 
復制代碼 代碼如下:

     substring
    -----------
     oob
    (1 row)
    MyTest=# SELECT substring('foobar' from '#"o_b#"%' FOR '#');  --foobar不能完全匹配后面的模式,因此返回NULL。
     substring
    -----------

    (1 row)
 

七、數據類型格式化函數:

    PostgreSQL格式化函數提供一套有效的工具用于把各種數據類型(日期/時間、integer、floating point和numeric)轉換成格式化的字符串以及反過來從格式化的字符串轉換成指定的數據類型。下面列出了這些函數,它們都遵循一個公共的調用習慣:第一個參數是待格式化的值,而第二個是定義輸出或輸出格式的模板。

函數 返回類型 描述 例子
to_char(timestamp, text) text 把時間戳轉換成字串 to_char(current_timestamp, 'HH12:MI:SS')
to_char(interval, text) text 把時間間隔轉為字串 to_char(interval '15h 2m 12s', 'HH24:MI:SS')
to_char(int, text) text 把整數轉換成字串 to_char(125, '999')
to_char(double precision, text) text 把實數/雙精度數轉換成字串 to_char(125.8::real, '999D9')
to_char(numeric, text) text 把numeric轉換成字串 to_char(-125.8, '999D99S')
to_date(text, text) date 把字串轉換成日期 to_date('05 Dec 2000', 'DD Mon YYYY')
to_timestamp(text, text) timestamp 把字串轉換成時間戳 to_timestamp('05 Dec 2000', 'DD Mon YYYY')
to_timestamp(double) timestamp 把UNIX紀元轉換成時間戳 to_timestamp(200120400)
to_number(text, text) numeric 把字串轉換成numeric to_number('12,454.8-', '99G999D9S')

     1. 用于日期/時間格式化的模式:

模式 描述
HH 一天的小時數(01-12)
HH12 一天的小時數(01-12)
HH24 一天的小時數(00-23)
MI 分鐘(00-59)
SS 秒(00-59)
MS 毫秒(000-999)
US 微秒(000000-999999)
AM 正午標識(大寫)
Y,YYY 帶逗號的年(4和更多位)
YYYY 年(4和更多位)
YYY 年的后三位
YY 年的后兩位
Y 年的最后一位
MONTH 全長大寫月份名(空白填充為9字符)
Month 全長混合大小寫月份名(空白填充為9字符)
month 全長小寫月份名(空白填充為9字符)
MON 大寫縮寫月份名(3字符)
Mon 縮寫混合大小寫月份名(3字符)
mon 小寫縮寫月份名(3字符)
MM 月份號(01-12)
DAY 全長大寫日期名(空白填充為9字符)
Day 全長混合大小寫日期名(空白填充為9字符)
day 全長小寫日期名(空白填充為9字符)
DY 縮寫大寫日期名(3字符)
Dy 縮寫混合大小寫日期名(3字符)
dy 縮寫小寫日期名(3字符)
DDD 一年里的日子(001-366)
DD 一個月里的日子(01-31)
D 一周里的日子(1-7;周日是1)
W 一個月里的周數(1-5)(第一周從該月第一天開始)
WW 一年里的周數(1-53)(第一周從該年的第一天開始)

     2. 用于數值格式化的模板模式:

模式 描述
9 帶有指定數值位數的值
0 帶前導零的值
.(句點) 小數點
,(逗號) 分組(千)分隔符
PR 尖括號內負值
S 帶符號的數值
L 貨幣符號
D 小數點
G 分組分隔符
MI 在指明的位置的負號(如果數字 0)
PL 在指明的位置的正號(如果數字 > 0)
SG 在指明的位置的正/負號

八、時間/日期函數和操作符:

    1. 下面是PostgreSQL中支持的時間/日期操作符的列表:

 

操作符 例子 結果
+ date '2001-09-28' + integer '7' date '2001-10-05'
+ date '2001-09-28' + interval '1 hour' timestamp '2001-09-28 01:00'
+ date '2001-09-28' + time '03:00' timestamp '2001-09-28 03:00'
+ interval '1 day' + interval '1 hour' interval '1 day 01:00'
+ timestamp '2001-09-28 01:00' + interval '23 hours' timestamp '2001-09-29 00:00'
+ time '01:00' + interval '3 hours' time '04:00'
- - interval '23 hours' interval '-23:00'
- date '2001-10-01' - date '2001-09-28' integer '3'
- date '2001-10-01' - integer '7' date '2001-09-24'
- date '2001-09-28' - interval '1 hour' timestamp '2001-09-27 23:00'
- time '05:00' - time '03:00' interval '02:00'
- time '05:00' - interval '2 hours' time '03:00'
- timestamp '2001-09-28 23:00' - interval '23 hours' timestamp '2001-09-28 00:00'
- interval '1 day' - interval '1 hour' interval '23:00'
- timestamp '2001-09-29 03:00' - timestamp '2001-09-27 12:00' interval '1 day 15:00'
* interval '1 hour' * double precision '3.5' interval '03:30'
/ interval '1 hour' / double precision '1.5' interval '00:40'

    2. 日期/時間函數:

函數 返回類型 描述 例子 結果
age(timestamp, timestamp) interval 減去參數,生成一個使用年、月的"符號化"的結果 age('2001-04-10', timestamp '1957-06-13') 43 years 9 mons 27 days
age(timestamp) interval 從current_date減去得到的數值 age(timestamp '1957-06-13') 43 years 8 mons 3 days
current_date date 今天的日期    
current_time time 現在的時間    
current_timestamp timestamp 日期和時間    
date_part(text, timestamp) double 獲取子域(等效于extract) date_part('hour', timestamp '2001-02-16 20:38:40') 20
date_part(text, interval) double 獲取子域(等效于extract) date_part('month', interval '2 years 3 months') 3
date_trunc(text, timestamp) timestamp 截斷成指定的精度 date_trunc('hour', timestamp '2001-02-16 20:38:40') 2001-02-16 20:00:00+00
extract(field from timestamp) double 獲取子域 extract(hour from timestamp '2001-02-16 20:38:40') 20
extract(field from interval) double 獲取子域 extract(month from interval '2 years 3 months') 3
localtime time 今日的時間    
localtimestamp timestamp 日期和時間    
now() timestamp 當前的日期和時間(等效于 current_timestamp)    
timeofday() text 當前日期和時間    

    3. EXTRACT,date_part函數支持的field:

描述 例子 結果
CENTURY 世紀 EXTRACT(CENTURY FROM TIMESTAMP '2000-12-16 12:21:13'); 20
DAY (月分)里的日期域(1-31) EXTRACT(DAY from TIMESTAMP '2001-02-16 20:38:40'); 16
DECADE 年份域除以10 EXTRACT(DECADE from TIMESTAMP '2001-02-16 20:38:40'); 200
DOW 每周的星期號(0-6;星期天是0) (僅用于timestamp) EXTRACT(DOW FROM TIMESTAMP '2001-02-16 20:38:40'); 5
DOY 一年的第幾天(1 -365/366) (僅用于 timestamp) EXTRACT(DOY from TIMESTAMP '2001-02-16 20:38:40'); 47
HOUR 小時域(0-23) EXTRACT(HOUR from TIMESTAMP '2001-02-16 20:38:40'); 20
MICROSECONDS 秒域,包括小數部分,乘以 1,000,000。 EXTRACT(MICROSECONDS from TIME '17:12:28.5'); 28500000
MILLENNIUM 千年 EXTRACT(MILLENNIUM from TIMESTAMP '2001-02-16 20:38:40'); 3
MILLISECONDS 秒域,包括小數部分,乘以 1000。 EXTRACT(MILLISECONDS from TIME '17:12:28.5'); 28500
MINUTE 分鐘域(0-59) EXTRACT(MINUTE from TIMESTAMP '2001-02-16 20:38:40'); 38
MONTH 對于timestamp數值,它是一年里的月份數(1-12);對于interval數值,它是月的數目,然后對12取模(0-11) EXTRACT(MONTH from TIMESTAMP '2001-02-16 20:38:40'); 2
QUARTER 該天所在的該年的季度(1-4)(僅用于 timestamp) EXTRACT(QUARTER from TIMESTAMP '2001-02-16 20:38:40'); 1
SECOND 秒域,包括小數部分(0-59[1]) EXTRACT(SECOND from TIMESTAMP '2001-02-16 20:38:40'); 40
WEEK 該天在所在的年份里是第幾周。 EXTRACT(WEEK from TIMESTAMP '2001-02-16 20:38:40'); 7
YEAR 年份域 EXTRACT(YEAR from TIMESTAMP '2001-02-16 20:38:40'); 2001

4. 當前日期/時間:

    我們可以使用下面的函數獲取當前的日期和/或時間∶
 

復制代碼 代碼如下:

    CURRENT_DATE
    CURRENT_TIME
    CURRENT_TIMESTAMP
    CURRENT_TIME (precision)
    CURRENT_TIMESTAMP (precision)
    LOCALTIME
    LOCALTIMESTAMP
    LOCALTIME (precision)
    LOCALTIMESTAMP (precision)

    該博客中提供的所有信息均源自PostgreSQL官方文檔,編寫該篇博客的主要目的是便于今后的查閱,特此聲明。

您可能感興趣的文章:
  • PostgreSQL教程(七):函數和操作符詳解(3)
  • PostgreSQL教程(五):函數和操作符詳解(1)
  • PostgreSQL基礎知識之SQL操作符實踐指南

標簽:錦州 珠海 株洲 衡陽 烏海 晉城 來賓 蚌埠

巨人網絡通訊聲明:本文標題《PostgreSQL教程(六):函數和操作符詳解(2)》,本文關鍵詞  PostgreSQL,教程,六,函數,和,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《PostgreSQL教程(六):函數和操作符詳解(2)》相關的同類信息!
  • 本頁收集關于PostgreSQL教程(六):函數和操作符詳解(2)的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    久久精品一区二区三区不卡 | 水野朝阳av一区二区三区| 午夜国产精品一区| 国产精品2024| 日韩午夜精品视频| 午夜国产精品一区| 欧美影视一区二区三区| 国产三级三级三级精品8ⅰ区| 日韩精品一卡二卡三卡四卡无卡| 99国内精品久久| 欧美精品一区二区三| 亚洲国产精品天堂| 日韩精品最新网址| 蜜桃传媒麻豆第一区在线观看| 欧美性xxxxxx少妇| 开心九九激情九九欧美日韩精美视频电影| 日韩午夜三级在线| 成人不卡免费av| 一区二区三区在线观看欧美| 色欧美日韩亚洲| 黑人精品欧美一区二区蜜桃| 国产精品久久久久久久久图文区| 91美女在线视频| 久久爱www久久做| 日韩电影一二三区| 成人欧美一区二区三区白人| 欧美亚洲国产bt| av在线播放一区二区三区| 麻豆精品国产传媒mv男同| ...av二区三区久久精品| 欧美群妇大交群中文字幕| 岛国一区二区在线观看| 亚洲资源在线观看| 欧美激情自拍偷拍| 精品日本一线二线三线不卡| 欧美自拍丝袜亚洲| 国产最新精品精品你懂的| 日韩精品午夜视频| 五月天一区二区| 亚洲国产精品一区二区久久恐怖片| 亚洲日本电影在线| 国产精品福利一区二区三区| 国产亚洲综合av| 精品国产伦一区二区三区观看体验 | 亚洲精品视频在线观看免费| 久久精品亚洲国产奇米99| 亚洲精品一区二区三区在线观看| 欧美日韩国产一级片| 日韩一级免费观看| 久久久亚洲欧洲日产国码αv| 久久精品网站免费观看| 国产精品久久久久aaaa樱花| 国产精品久久久久影院色老大| 中文字幕一区二区三区蜜月| 一区二区三区四区在线| 三级不卡在线观看| www.欧美日韩| 久久精品网站免费观看| 亚洲国产成人在线| 日韩欧美美女一区二区三区| 亚洲自拍欧美精品| 91精品免费在线观看| 91精品1区2区| 一级精品视频在线观看宜春院| 成人精品免费网站| 一区二区三区成人在线视频| 色婷婷狠狠综合| 亚洲成a人片在线观看中文| 日本色综合中文字幕| 国产精品综合二区| 在线观看91视频| www国产精品av| 亚洲激情六月丁香| 国模少妇一区二区三区| 欧美亚一区二区| 日韩视频在线你懂得| 中文字幕第一页久久| 日本美女一区二区三区视频| 99久久精品费精品国产一区二区| 91精品婷婷国产综合久久 | 欧美色倩网站大全免费| 国产欧美综合在线观看第十页| 日韩精品免费视频人成| 91浏览器入口在线观看| 色久综合一二码| 亚洲蜜臀av乱码久久精品蜜桃| av动漫一区二区| 1024成人网色www| 久久精品国产网站| 精品av综合导航| 99久久亚洲一区二区三区青草| 亚洲天堂免费在线观看视频| 色婷婷综合久久久久中文一区二区| 亚洲综合激情另类小说区| 6080日韩午夜伦伦午夜伦| 久久激情五月婷婷| 国产人成一区二区三区影院| 国产一区二区精品久久| 亚洲国产经典视频| 欧美丝袜自拍制服另类| 麻豆一区二区三区| 精品播放一区二区| 欧美视频自拍偷拍| 国产成人在线观看免费网站| 亚洲女同一区二区| 欧美经典一区二区| 国产成都精品91一区二区三| 亚洲久草在线视频| 日韩美女天天操| 在线观看91av| 国产麻豆精品theporn| 成人影视亚洲图片在线| 国产麻豆精品在线观看| 欧美bbbbb| 成人动漫av在线| 欧美成人a在线| 亚洲欧美日韩在线播放| 日韩精品一区二区三区中文精品| 欧美日韩在线不卡| 日韩欧美一区中文| 亚洲人成网站在线| 91首页免费视频| 丁香婷婷综合五月| 久久综合久久综合亚洲| 欧美视频在线观看一区二区| 日本黄色一区二区| 91福利在线观看| 欧美精选一区二区| 日本丶国产丶欧美色综合| 欧美日韩国产高清一区二区三区| 欧美一个色资源| 国产精品福利一区二区三区| 亚洲一区二区三区美女| 狠狠色狠狠色综合日日91app| 精品一区二区国语对白| 色偷偷一区二区三区| 美女一区二区视频| 亚洲国产aⅴ天堂久久| 欧美色区777第一页| 国产精品一品视频| 中文字幕一区二区三中文字幕| 91行情网站电视在线观看高清版| 国产精品久久久久久久蜜臀| 国产激情视频一区二区在线观看 | 亚洲另类在线视频| 97精品国产97久久久久久久久久久久 | 久久亚洲精精品中文字幕早川悠里| 亚洲国产精品久久艾草纯爱| 久久女同互慰一区二区三区| 国产成人精品免费在线| 亚洲妇女屁股眼交7| 国产精品另类一区| 91精品国产91久久综合桃花 | 夜夜操天天操亚洲| 天使萌一区二区三区免费观看| 午夜精品一区二区三区免费视频| 婷婷丁香久久五月婷婷| 六月丁香婷婷久久| 国产精品网站导航| 无码av免费一区二区三区试看| 国产69精品一区二区亚洲孕妇| 国产91丝袜在线播放0| 99国产精品久久| 精品视频资源站| 欧美刺激脚交jootjob| 久久精品亚洲精品国产欧美kt∨ | 日韩欧美国产小视频| 国产婷婷精品av在线| 亚洲私人黄色宅男| 日韩黄色免费电影| 国产成人精品亚洲777人妖| 亚洲欧美色图小说| 婷婷激情综合网| 国产福利91精品一区| 色综合婷婷久久| 日韩久久久精品| 亚洲欧美在线视频观看| 亚洲高清视频在线| 国产伦理精品不卡| 懂色av中文字幕一区二区三区 | 不卡的av中国片| 欧美性大战久久久久久久蜜臀| 欧美草草影院在线视频| 中文幕一区二区三区久久蜜桃| 亚洲自拍另类综合| 国产91精品一区二区麻豆网站| 欧美日韩精品一区二区天天拍小说 | 一个色妞综合视频在线观看| 亚洲777理论| 成人激情免费视频| 欧美成人a视频| 亚洲成人黄色影院| 粉嫩绯色av一区二区在线观看| 欧美日韩激情在线| 中文字幕日本不卡| 国产在线不卡一区| 91精品国产综合久久久久久久久久| 国产精品美女久久久久久2018| 裸体歌舞表演一区二区| 亚洲国产另类av|