久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

數(shù)據(jù)庫中TO

139次閱讀
沒有評論

共計 3062 個字符,預(yù)計需要花費 8 分鐘才能閱讀完成。

本篇內(nèi)容主要講解“數(shù)據(jù)庫中 TO_CHAR 格式轉(zhuǎn)換的方法是什么”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強(qiáng)。下面就讓丸趣 TV 小編來帶大家學(xué)習(xí)“數(shù)據(jù)庫中 TO_CHAR 格式轉(zhuǎn)換的方法是什么”吧!

我的經(jīng)理叫我寫一個函數(shù),這個函數(shù)接受一個正整數(shù)并返回相應(yīng)的序數(shù) (比如,2- 2nd,  145- 145th), 這個序數(shù)是一個字符串。這個函數(shù)只接受 1 和 50,000 之間的整數(shù)。

下列的哪些選項實現(xiàn)了函數(shù) plch_n_to_nth, 從而使得它滿足上述需求,在下列塊被執(zhí)行之后:

BEGIN
 DBMS_OUTPUT.put_line (plch_n_to_nth (1));
 DBMS_OUTPUT.put_line (plch_n_to_nth (8));
 DBMS_OUTPUT.put_line (plch_n_to_nth (256));
 DBMS_OUTPUT.put_line (plch_n_to_nth (25763));
/

我能見到如下輸出:

1st
256th
25763rd

(A)

CREATE OR REPLACE FUNCTION plch_n_to_nth (n_in IN INTEGER)
 RETURN VARCHAR2
BEGIN
 RETURN TO_CHAR (n_in,  9999th 
/
SQL  BEGIN
 2 DBMS_OUTPUT.put_line (plch_n_to_nth (1));
 3 DBMS_OUTPUT.put_line (plch_n_to_nth (8));
 4 DBMS_OUTPUT.put_line (plch_n_to_nth (256));
 5 DBMS_OUTPUT.put_line (plch_n_to_nth (25763));
 6 END;
 7 /
BEGIN
 DBMS_OUTPUT.put_line (plch_n_to_nth (1));
 DBMS_OUTPUT.put_line (plch_n_to_nth (8));
 DBMS_OUTPUT.put_line (plch_n_to_nth (256));
 DBMS_OUTPUT.put_line (plch_n_to_nth (25763));
ORA-01481:  無效的數(shù)字格式模型
ORA-06512:  在   YOGA.PLCH_N_TO_NTH , line 5
ORA-06512:  在  line 2
SQL

(B)

CREATE OR REPLACE FUNCTION plch_n_to_nth (n_in IN INTEGER)
 RETURN VARCHAR2
BEGIN
 RETURN LOWER (
 TO_CHAR ( TO_DATE ( 1-1-  || n_in,  dd-mm-yyyy)
 ,  FMYYYYth 
/
SQL  BEGIN
 2 DBMS_OUTPUT.put_line (plch_n_to_nth (1));
 3 DBMS_OUTPUT.put_line (plch_n_to_nth (8));
 4 DBMS_OUTPUT.put_line (plch_n_to_nth (256));
 5 DBMS_OUTPUT.put_line (plch_n_to_nth (25763));
 6 END;
 7 /
256th
BEGIN
 DBMS_OUTPUT.put_line (plch_n_to_nth (1));
 DBMS_OUTPUT.put_line (plch_n_to_nth (8));
 DBMS_OUTPUT.put_line (plch_n_to_nth (256));
 DBMS_OUTPUT.put_line (plch_n_to_nth (25763));
ORA-01830:  日期格式圖片在轉(zhuǎn)換整個輸入字符串之前結(jié)束
ORA-06512:  在   YOGA.PLCH_N_TO_NTH , line 5
ORA-06512:  在  line 5
SQL

(C)

CREATE OR REPLACE FUNCTION plch_n_to_nth (n_in IN INTEGER)
 RETURN VARCHAR2
BEGIN
 RETURN LOWER (
 TO_CHAR (
 TO_DATE ( 1-1-2011   || n_in
 ,  dd-mm-yyyy SSSSS )
 ,  FMSSSSSth 
/
SQL  BEGIN
 2 DBMS_OUTPUT.put_line (plch_n_to_nth (1));
 3 DBMS_OUTPUT.put_line (plch_n_to_nth (8));
 4 DBMS_OUTPUT.put_line (plch_n_to_nth (256));
 5 DBMS_OUTPUT.put_line (plch_n_to_nth (25763));
 6 END;
 7 /
256th
25763rd
PL/SQL procedure successfully completed
SQL

(D)

CREATE OR REPLACE FUNCTION plch_n_to_nth ( n_in IN INTEGER)
 RETURN VARCHAR2
 c_last_digit CONSTANT PLS_INTEGER
 := MOD (n_in, 10) ;
 c_tens_digit CONSTANT CHAR (1)
 := SUBSTR (0  || TO_CHAR (n_in), -2, 1) ;
BEGIN
 RETURN TO_CHAR (n_in)
 || CASE
 WHEN c_tens_digit =  1  THEN  th 
 WHEN c_last_digit = 1 THEN  st 
 WHEN c_last_digit = 2 THEN  nd 
 WHEN c_last_digit = 3 THEN  rd 
 ELSE  th 
 END;
END plch_n_to_nth;
/
SQL  BEGIN
 2 DBMS_OUTPUT.put_line (plch_n_to_nth (1));
 3 DBMS_OUTPUT.put_line (plch_n_to_nth (8));
 4 DBMS_OUTPUT.put_line (plch_n_to_nth (256));
 5 DBMS_OUTPUT.put_line (plch_n_to_nth (25763));
 6 END;
 7 /
256th
25763rd
PL/SQL procedure successfully completed
SQL
CD.
(A) 你不能在 TO_CHAR(NUMBER) 中使用 TH 格式,只能在 TO_CHAR (datetime) 中使用。(B) 差點就對了,這個答案在年份使用了 th 格式,  但 ORACLE 不支持高達(dá) 50,000 的年份,會出現(xiàn)如下錯誤:ORA-01830: date format picture ends before converting entire input string
(C) 這個正確使用了 TO_CHAR (datetime) 的 th 格式,一天中有 86400 秒,足夠使用。(D) 這個自定義函數(shù)正確實現(xiàn)了轉(zhuǎn)換規(guī)則。

到此,相信大家對“數(shù)據(jù)庫中 TO_CHAR 格式轉(zhuǎn)換的方法是什么”有了更深的了解,不妨來實際操作一番吧!這里是丸趣 TV 網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!

正文完
 
丸趣
版權(quán)聲明:本站原創(chuàng)文章,由 丸趣 2023-07-24發(fā)表,共計3062字。
轉(zhuǎn)載說明:除特殊說明外本站除技術(shù)相關(guān)以外文章皆由網(wǎng)絡(luò)搜集發(fā)布,轉(zhuǎn)載請注明出處。
評論(沒有評論)
主站蜘蛛池模板: 浦城县| 鹤山市| 宜良县| 东莞市| 北宁市| 丹凤县| 大渡口区| 白水县| 巴南区| 塔河县| 集安市| 团风县| 平遥县| 绥德县| 郧西县| 桃园县| 大连市| 浏阳市| 瑞昌市| 宁海县| 甘孜县| 永嘉县| 肥东县| 上栗县| 萝北县| 枝江市| 南昌市| 馆陶县| 田东县| 九寨沟县| 贺兰县| 额敏县| 德令哈市| 芜湖市| 农安县| 龙门县| 彰化县| 五台县| 乌拉特后旗| 叙永县| 汕尾市|