中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

postgresql——條件判斷函數,系統函數等

發布時間:2020-07-05 13:19:08 來源:網絡 閱讀:4108 作者:一個笨小孩 欄目:數據庫

一、條件判斷函數:

條件判斷函數稱為控制流程函數,postgresql中,進行條件判斷的函數為:case。


1、CASE  expr  WHEN  v1  THEN  r1  [WHEN v2 THEN r2] [ELSE rn] END

該函數表示,如果expr值等于某個vn,就返回對應位置THEN后面的結果,如果與所有值都不相等,就返回ELSE后面的rn。


例子:使用case value when語句執行分支操作,如下:

testdb=# select case 2 when 1 then 'one' when 2 then 'two' else 'more' end;

 case 

------

 two

(1 row)


2、CASE WHEN v1 THEN r1  [WHEN v2 THEN r2] ELSE rn END

該函數表示,某個vn值為TRUE時,返回對應位置THEN后面的結果,如果所有值都不為TRUE,就返回ELSE后的rn.


例子:使用case when語句執行分支操作,如:

testdb=# select case when 1<0 then 'true' else 'false' end;

 case  

-------

 false

(1 row)



二、系統信息函數:

postgresql中的系統信息有數據庫的版本號、當前用戶名和連接數,系統字符集、最后一個自動生成的ID值等。


1、獲取postgresql的版本號:version()

testdb=# select version();

                                                 version                                                  

----------------------------------------------------------------------------------------------------------

 PostgreSQL 9.6.9 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-16), 64-bit

(1 row)


2、獲取用戶名的函數:user和current_user


testdb=# select user,current_user;

 current_user | current_user 

--------------+--------------

 pguser       | pguser

(1 row)



三、加密和解密函數


1、加密函數:MD5(str)

MD5(str)為字符串算出了一個MD5 128比特檢查和。該值以32為十六進制的二進制字符串的形式返回,若參數為null則會返回null。


例子:使用MD5函數加密字符串,如:

testdb=# select MD5 ('zhang');

               md5                

----------------------------------

 d0cd2693b3506677e4c55e91d6365bff

(1 row)


2、加密函數:encode(str,pswd_str)

encode(str,pswd_str)使用pswd_str作為加密編碼,加密str。常見的加密編碼包括:base64,hex和escape。


例子:使用encode的加密字符串,如:

testdb=# select encode('secret','hex'),length(encode('secret','hex'));

    encode    | length 

--------------+--------

 736563726574 |     12

(1 row)



3、解密函數:decode(crypt_str,pswd_str)

decode(crypt_str,pswd_str)使用pswd_str作為密碼,解密加密字符串crypt_str。crypt_str是由encode()返回的字符串。


例子:使用decode函數解密被encode加密字符串,如:

testdb=# select decode(encode('secret','hex'),'hex');

     decode     

----------------

 \x736563726574

(1 row)


-------------------------------------------------

改變數據類型的函數:


cast(s ,AS type)將一個類型的值轉換為另一個類型的值。


例子:使用cast函數進行數據類型的轉換,如下:

testdb=# select cast(100 as char(2));

 bpchar 

--------

 10

(1 row)


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

灯塔市| 卓资县| 巩留县| 荥阳市| 丰原市| 江达县| 霍山县| 玉屏| 安吉县| 洛浦县| 江都市| 庆城县| 淮南市| 达州市| 轮台县| 朝阳市| 阳东县| 随州市| 揭东县| 荆门市| 红原县| 广安市| 新龙县| 安阳市| 荔浦县| 新安县| 右玉县| 轮台县| 盐池县| 甘孜县| 濮阳县| 津南区| 都江堰市| 林甸县| 镇巴县| 临沭县| 青冈县| 毕节市| 敖汉旗| 龙山县| 左云县|