當前位置:首頁 » 編程語言 » oraclesqltochar
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

oraclesqltochar

發布時間: 2022-01-29 15:00:37

1. 求助把Oracle資料庫TO_CHAR(ADD_MONTHS(sysdate,-2)'YYYYMM')gstrzenzengtuYYYYMM,格式轉換為sqlser格式

convert(varchar(6),DATEADD(MONTH, -2,GETDATE()), 112)

2. oracle資料庫的 to char 和to date 區別

一、功能不同

1、to char:將時間日期按照指定的格式輸出,得到的是字元串,而非date類型。

2、to date:將字元串按照指定的格式輸出,得到的是日期類型。

二、語法不同

1、to char:to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') 。

2、to date:to_date('2004-05-07 13:23:44','yyyy-mm-dd hh24:mi:ss') 。


三、規則不同

1、to char:只要被轉換的是一個日期,yyyy,mm,dd中間加不加連接符,加什麼連接符都可以。

2、to date:第一個參數的yyyy,mm,dd之間有沒有連接符。如果有,那麼第二個參數必須有連接符,隨便是什麼連接符。


3. oracle sql 查詢出sum(tot)一個數字欄位,想轉換成保留兩位TO_CHAR(sum(tot),'999,999,999.99')

selectto_char(0.23,'fm0.99')fromal

第一行你寫的沒看明白,第二行最後少個end,第三行decode不支持這種寫法,可以換成

decode(sign(sum(tot)-1),1,TO_CHAR(sum(tot),'999,999,999.99'),TO_CHAR(sum(tot),'0.99'))

4. 求sql server 2008中類似oracle中to_char轉換日期格式函數,想得出月日的函數

1、首先打開SQL SERVER的管理工具,然後選定一個資料庫,點擊新建查詢。

5. 怎麼用oracle函數to_date(),to_char()寫的sql語句

資料庫中modtime欄位的值是'06-五月-2002
11:00:30
AM'string型變數filetime的值是'2002/5/6
上午
11:00:30'下面sql語句錯在那兒??
select
*
from
tab_file
where
to_char(modtime,'yyyy/m/d
上午
hh:ss')='2002/5/6
上午
11:00
日期格式無法辨識

6. oracle中的to_char() 在sqlserver2008中如何使用 如下面的語句

若能保證a.Rate可以強行轉換為數字(就是說裡面保存的只有數字)的話

可以使用 Convert(decimal(18,2),a.Rate1 * 100) 來轉換成格式為保留小數點後2位數字,總長度最高18位的數字.

若是a.Rate還含有小數的話 修改為
Convert(decimal(18,2),a.Rate1 * 100.00)
即可執行

7. Oracle資料庫to_date()和to_char()的相關

select * from T_A a where a.begintime=to_date('2013-1-1','yyyy-mm-dd');

select * from T_A a where to_char(a.begintime,'yyyy-mm-dd')='2013-1-1';

查詢結果是一樣的.

區別在於 查詢的 處理步驟不一樣.

select * from T_A a where a.begintime=to_date('2013-1-1','yyyy-mm-dd');
是先把 '2013-1-1' 這個字元串, 轉換為日期格式, 然後去和資料庫裡面做比較.
如果有 1000 行數據, 那麼操作就是
1次 字元轉換為 日期, 1000 次日期比較。

select * from T_A a where to_char(a.begintime,'yyyy-mm-dd')='2013-1-1';
是把資料庫裡面的每一行的 begintime, 轉換為 字元格式, 然後去和資料庫裡面做比較。
如果有 1000 行數據, 那麼操作就是
1000次 日期轉換為字元, 1000 次字元串比較。

8. oracle的pl/sql,不使用to_char,有辦法把小數點前不顯示的0顯示出來嗎

沒什麼好方法,只能用to_char
dbms_output.put_line('稅率:'|| to_char(c_psa,'fm9999999990.00'));
或者在前邊定義變數的時候就設置為varchar2類型
或者decode函數,但是無法用在dbms_output.put_line中
decode(substr(c_psa,1,1),'.','0'||c_psa,c_psa)

9. oracle資料庫的tochar和todate區別

tochar是把日期或數字轉換為字元串
todate是把字元串轉換為資料庫中得日期類型
轉換函數
TO_CHAR
使用TO_CHAR函數處理數字
TO_CHAR(number,'格式')
TO_CHAR(salary,』$99,999.99』);
使用TO_CHAR函數處理日期
TO_CHAR(date,』格式』);
TO_NUMBER
使用TO_NUMBER函數將字元轉換為數字
TO_NUMBER(char[,'格式'])
TO_DATE
使用TO_DATE函數將字元轉換為日期
TO_DATE(char[,'格式'])
數字格式格式
9代表一個數字
0強制顯示0
$放置一個$符
L放置一個浮動本地貨幣符
.顯示小數點
,顯示千位指示符
日期格式
格式控制描述
YYYY、YYY、YY分別代表4位、3位、2位的數字年
YEAR年的拼寫
MM數字月
MONTH月的全拼
MON月的縮寫
DD數字日
DAY星期的全拼
DY星期的縮寫
AM表示上午或者下午
HH24、HH1212小時制或24小時制
MI分鍾
SS秒鍾
SP數字的拼寫
TH數字的序數詞
「特殊字元」假如特殊字元
HH24:MI:SSAM15:43:20PM
DD「OF」MONTH12OFOCTOBER
DDSPTHfourteenth
Date的格式』18-5月-84』

10. Oracle 資料庫to_charc(trunc(sysdate,'mm')-1),'yyyymmdd')轉化為SQLser語句

ORACLE中TRUNC是截取的函數
用在日期類型上,就是截取到日或時間
SELECT TRUNC(SYSDATE) FROM DUAL;
默認是截取系統日期到日,得到2012-12-19
比如值為"2012-12-19 14:30:50"的日期變數
TRUNC(SYSDATE)得到 2012-12-19 , 和TRUNC(SYSDATE,'DD')一樣
TRUNC(SYSDATE,'YYYY'),得到2012-1-1
TRUNC(SYSDATE,'MM'),得到2012-12-1
TRUNC(SYSDATE,'DD'),得到2012-12-19
TRUNC(SYSDATE,'HH')或HH24,得到2012-12-19 14:00:00
TRUNC(SYSDATE,'MI'),得到2012-12-19 14:30:00
TRUNC(SYSDATE,'SS'),是會報錯的,直接用SYSDATE不用TRUNC
另外說明一下,截取後得到的仍為date數據類型