postgresql 中的to_char()常用操作
postgresql中的to_char()用法和Oracle相比,多了一個參數(shù)。
to_char(待轉(zhuǎn)換值,轉(zhuǎn)換格式);
常用轉(zhuǎn)換格式有2種:
一個是寫若干個0,如果待轉(zhuǎn)換的值位數(shù)少于于你定義的轉(zhuǎn)換格式位數(shù),輸出值會自動在左邊補0,位數(shù)補齊到轉(zhuǎn)換格式的長度;如果待轉(zhuǎn)換的值位數(shù)多于你定義的轉(zhuǎn)換格式位數(shù),輸出值為:##(長度跟你定義的轉(zhuǎn)換格式一樣);
另一個是寫若干個9,如果待轉(zhuǎn)換的值位數(shù)少于你定義的轉(zhuǎn)換格式位數(shù),正常輸出;
如果待轉(zhuǎn)換的值位數(shù)多于于你定義的轉(zhuǎn)換格式位數(shù),輸出值為:##(長度跟你定義的轉(zhuǎn)換格式一樣);
轉(zhuǎn)換格式如果寫其他數(shù)字,輸出結果為轉(zhuǎn)換格式的值。
補充:Postgresql中使用to_char進行yyyy-MM-dd HH:mm:ss轉(zhuǎn)換時要注意的問題
在java和一些常用的數(shù)據(jù)中(mysql/sqlsever)中進行年月日分秒轉(zhuǎn)換的時候,都是用
SELECT to_char(CURRENT_DATE,'yyyy-MM-dd hh:MM:ss')
但是在Postgresql中這樣用就會出現(xiàn)問題,在pg中執(zhí)行上面的語句返回的結果為
2015-05-06 12:05:00
看到了,這并不是我們想要的,那怎么處理呢?在pg中要用下面的方法
SELECT to_char(CURRENT_DATE,'yyyy-MM-dd hh24:MI:ss')
結果如下
2015-05-06 00:00:00
這才是我們想要結果,看來不能想當然的,認為所有數(shù)據(jù)庫都是一樣的,要細心!
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。如有錯誤或未考慮完全的地方,望不吝賜教。
相關文章
Postgresql 數(shù)據(jù)庫 varchar()字符占用多少字節(jié)介紹
這篇文章主要介紹了Postgresql 數(shù)據(jù)庫 varchar()字符占用多少字節(jié)介紹,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-12-12PostgreSQL中ON?CONFLICT的使用及一些擴展用法
Postgres?ON?CONFLICT是PostgreSQL數(shù)據(jù)庫中的一個功能,用于處理插入或更新數(shù)據(jù)時的沖突情況,下面這篇文章主要給大家介紹了關于PostgreSQL中ON?CONFLICT的使用及一些擴展用法的相關資料,需要的朋友可以參考下2024-06-06PostgreSQL 序列綁定字段與不綁定字段的區(qū)別說明
這篇文章主要介紹了PostgreSQL 序列綁定字段與不綁定字段的區(qū)別說明,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2021-02-02PostgreSQL處理數(shù)據(jù)并發(fā)更新沖突的解決方法
在數(shù)據(jù)庫并發(fā)操作環(huán)境中,多個事務同時嘗試更新相同的數(shù)據(jù)可能導致沖突,PostgreSQL?提供了一系列機制來處理這些并發(fā)更新沖突,以確保數(shù)據(jù)的一致性和完整性,所以本文給大家介紹了PostgreSQL處理數(shù)據(jù)并發(fā)更新沖突的解決方法,需要的朋友可以參考下2024-07-07