Heim Datenbank MySQL-Tutorial Oracle 人民币小写转大写

Oracle 人民币小写转大写

Jun 07, 2016 pm 02:57 PM
oracle 人民币 大写 小写

练手用用,写得很复杂 无 CREATE OR REPLACE FUNCTION PARSE_FEE_CHINESE(N_FEE IN NUMBER) RETURN VARCHAR2 AS V_CHINESE_NUMBER VARCHAR2(30) := '零壹贰叁肆伍陆柒捌玖'; V_CHINESE_POINT VARCHAR2(30) := '分角元拾佰仟万亿'; V_RESULT VARCHAR2(100) :=

练手用用,写得很复杂
CREATE OR REPLACE FUNCTION PARSE_FEE_CHINESE(N_FEE IN NUMBER)
  RETURN VARCHAR2 AS
  V_CHINESE_NUMBER VARCHAR2(30) := '零壹贰叁肆伍陆柒捌玖';
  V_CHINESE_POINT  VARCHAR2(30) := '分角元拾佰仟万亿';
  V_RESULT         VARCHAR2(100) := '';
  V_TEMP           VARCHAR2(100);
  V_FLAG           VARCHAR2(10);
  V_MAIN           VARCHAR2(40);
  V_SUB            VARCHAR2(20);
  N_TEMPFEE        NUMBER(30, 2);
  C_CH1            CHAR(1);
  C_CH2            VARCHAR2(10);
  N_LENGTH         NUMBER(10) := 0;
  I                NUMBER(10) := 0;
  J                NUMBER(10) := 0;
  T                NUMBER(10) := 0;
BEGIN
  IF N_FEE < 0 THEN
    V_FLAG    := '负';
    N_TEMPFEE := -1 * N_FEE;
  ELSE
    N_TEMPFEE := N_FEE;
    V_FLAG    := '';
  END IF;
  SELECT TRIM(TO_CHAR(ROUND(N_TEMPFEE, 2), '9999999999999999999.99'))
    INTO V_TEMP
    FROM DUAL;
  IF N_FEE = 0 THEN
    V_RESULT := '零元整';
  ELSE
    --先处理整数,再处理小数
    V_MAIN := SUBSTR(V_TEMP, 1, INSTR(V_TEMP, '.') - 1);
    V_SUB  := SUBSTR(V_TEMP, INSTR(V_TEMP, '.') + 1);


    N_LENGTH := LENGTH(V_MAIN);
    I        := N_LENGTH;
    T        := 0;
    IF V_MAIN IS NULL OR '0' = V_MAIN THEN
      V_RESULT := '零' || V_RESULT;
    END IF;
    WHILE I > 0 LOOP
      I      := I - 1;
      T      := T + 1;
      C_CH1  := SUBSTR(V_MAIN, I + 1);
      V_MAIN := SUBSTR(V_MAIN, 1, I);
      J      := TO_NUMBER(C_CH1);
      IF T = 5 OR t= 13 THEN
        V_RESULT := '万' || V_RESULT;
      ELSIF T = 9 THEN
        IF '万' = SUBSTR(V_RESULT, 1, 1) THEN
          V_RESULT := '亿' || SUBSTR(V_RESULT, 2);
        ELSE
          V_RESULT := '亿' || V_RESULT;
        END IF;
      END IF;
      IF '0' = C_CH1 THEN
        IF I <> N_LENGTH AND '零' <> C_CH2 THEN
          IF T <> 5 AND T <> 9 AND T <> 13 THEN
            V_RESULT := '零' || V_RESULT;
          ELSIF T = 5 OR T = 9 OR t=13 THEN
            V_RESULT := SUBSTR(V_RESULT, 1, 1) || '零' ||
                        SUBSTR(V_RESULT, 2);
          END IF;
          C_CH2 := SUBSTR(V_CHINESE_NUMBER, J, 1);
        END IF;
      ELSE
        J := MOD(T, 4);
        IF T <> 5 AND T <> 9 AND T <> 13 THEN
          IF J <> 1 THEN
            IF J = 0 THEN
              J := J + 4;
            END IF;
            J        := J + 2;
            V_RESULT := SUBSTR(V_CHINESE_POINT, J, 1) || V_RESULT;
          END IF;
        END IF;
        J        := TO_NUMBER(C_CH1) + 1;
        C_CH2    := SUBSTR(V_CHINESE_NUMBER, J, 1);
        V_RESULT := C_CH2 || V_RESULT;
      END IF;
    END LOOP;
    V_RESULT := V_RESULT || '元';
    IF V_SUB IS NULL OR LENGTH(TRIM(V_SUB)) <= 0 OR TO_NUMBER(V_SUB) = 0 THEN
      V_RESULT := V_RESULT || '整';
    ELSE
      C_CH1    := SUBSTR(V_SUB, 1, 1);
      J        := TO_NUMBER(C_CH1) + 1;
      C_CH2    := SUBSTR(V_CHINESE_NUMBER, J, 1);
      IF '0' = C_CH1 THEN
              V_RESULT := V_RESULT || C_CH2 ;
      ELSE
      V_RESULT := V_RESULT || C_CH2 || '角';
      END IF;
      C_CH1 := SUBSTR(V_SUB, 2, 1);
      IF '0' <> C_CH1 THEN
        J        := TO_NUMBER(C_CH1) + 1;
        C_CH2    := SUBSTR(V_CHINESE_NUMBER, J, 1);
        V_RESULT := V_RESULT || C_CH2 || '分';
      END IF;
    END IF;
  END IF;
  V_RESULT := V_FLAG || V_RESULT;
  RETURN V_RESULT;
END;
Nach dem Login kopieren
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Wie man alles in Myrise freischaltet
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

So überprüfen Sie die Tabellenraumgröße von Oracle So überprüfen Sie die Tabellenraumgröße von Oracle Apr 11, 2025 pm 08:15 PM

Um die Oracle -Tablespace -Größe abzufragen, führen Sie die folgenden Schritte aus: Bestimmen Sie den Namen Tablespace, indem Sie die Abfrage ausführen: Wählen Sie Tablespace_Name aus dba_tablespaces. Abfragen Sie die Tablespace -Größe durch Ausführen der Abfrage: Summe (Bytes) als Total_Size, sum (bytes_free) als verfügbare_space, sum

So importieren Sie die Oracle -Datenbank So importieren Sie die Oracle -Datenbank Apr 11, 2025 pm 08:06 PM

Datenimportmethode: 1. Verwenden Sie das SQLLoader -Dienstprogramm: Datendateien vorbereiten, Steuerdateien erstellen und SQLLOADER ausführen. 2. Verwenden Sie das IMP/Exp -Tool: Daten exportieren, Daten importieren. Tipp: 1. Empfohlener SQL*Loader für Big -Data -Sets; 2. Die Zieltabelle sollte vorhanden und die Spaltendefinition entspricht. 3. Nach dem Import muss die Datenintegrität überprüft werden.

Wie man die Oracle -Installation deinstalliert Wie man die Oracle -Installation deinstalliert Apr 11, 2025 pm 08:24 PM

Deinstallieren Sie die Methode für Oracle -Installationsfehler: Schließen Sie den Oracle -Service, löschen Sie Oracle -Programmdateien und Registrierungsschlüssel, Deinstallieren Sie Oracle -Umgebungsvariablen und starten Sie den Computer neu. Wenn das Deinstall fehlschlägt, können Sie das Oracle Universal Deinstall -Tool manuell deinstallieren.

So verschlüsseln Sie die Oracle -Ansicht So verschlüsseln Sie die Oracle -Ansicht Apr 11, 2025 pm 08:30 PM

Mit der Verschlüsselung von Oracle View können Sie Daten in der Ansicht verschlüsseln und so die Sicherheit sensibler Informationen verbessern. Die Schritte umfassen: 1) Erstellen des Master -Verschlüsselungsschlüssels (MEK); 2) Erstellen einer verschlüsselten Ansicht, der Ansicht und der Verschlüsselung der Ansicht und der MEK angeben; 3) Benutzern Sie die Benutzer, auf die verschlüsselte Ansicht zuzugreifen. Wie verschlüsselte Ansichten funktionieren: Wenn ein Benutzer nach einer verschlüsselten Ansicht nachgefragt wird, verwendet Oracle MEK, um Daten zu entschlüsseln und sicherzustellen, dass nur autorisierte Benutzer auf lesbare Daten zugreifen können.

So fügen Sie Oracle Tabellenfelder hinzu So fügen Sie Oracle Tabellenfelder hinzu Apr 11, 2025 pm 07:30 PM

Verwenden Sie die Anweisung für die Änderung der Tabelle, die spezifische Syntax lautet wie folgt: Alter table table_name add column_name data_type [Constraint-Clause]. Wo: table_name der Tabellenname ist, Spalten_Name ist der Feldname, Data_Type ist der Datentyp, und die Einschränkungsklausel ist eine optionale Einschränkung. Beispiel: Änderung der Tabelle Mitarbeiter Fügen Sie der Mitarbeitertabelle eine E -Mail -Varchar2 (100) hinzu.

Wie man Orakel wiedergegeben Wie man Orakel wiedergegeben Apr 11, 2025 pm 07:33 PM

Oracle bietet mehrere Deduplication -Abfragemethoden: Das bestimmte Schlüsselwort gibt für jede Spalte einen eindeutigen Wert zurück. Die Gruppe nach Klausel gruppiert die Ergebnisse und gibt für jede Gruppe einen nicht repetitiven Wert zurück. Das eindeutige Schlüsselwort wird verwendet, um einen Index mit nur eindeutigen Zeilen zu erstellen, und das Abfragen des Index wird automatisch dedupliziert. Die Funktion row_number () weist eindeutige Zahlen und filtert Ergebnisse aus, die nur Zeile 1 enthalten. Die Funktion min () oder max () gibt nicht repetitive Werte einer numerischen Spalte zurück. Der Schnittbetreiber gibt die gemeinsamen Werte der beiden Ergebnissätze zurück (keine Duplikate).

So sehen Sie den Instanznamen von Oracle So sehen Sie den Instanznamen von Oracle Apr 11, 2025 pm 08:18 PM

Es gibt drei Möglichkeiten, Instanznamen in Oracle anzuzeigen: Verwenden Sie den "SQLPLUS" und "Instance_name aus v $ Instance". Befehle in der Befehlszeile. Verwenden Sie den "show Instance_name;" Befehl in SQL*Plus. Überprüfen Sie die Umgebungsvariablen (Oracle_sid unter Linux) über den Task -Manager des Betriebssystems, den Oracle Enterprise Manager oder über das Betriebssystem.

So erstellen Sie eine Tabelle in Oracle So erstellen Sie eine Tabelle in Oracle Apr 11, 2025 pm 08:00 PM

Das Erstellen einer Oracle -Tabelle umfasst die folgenden Schritte: Verwenden Sie die Tabellensyntax erstellen, um Tabellennamen, Spaltennamen, Datentypen, Einschränkungen und Standardwerte anzugeben. Der Tabellenname sollte präzise und beschreibend sein und 30 Zeichen nicht überschreiten. Der Spaltenname sollte beschreibend sein und der Datentyp gibt den in der Spalte gespeicherten Datentyp an. Die Nicht -Null -Einschränkung stellt sicher, dass Nullwerte in der Spalte nicht zulässig sind, und die Standardklausel gibt die Standardwerte für die Spalte an. Primärschlüsseleinschränkungen zur Ermittlung des eindeutigen Datensatzes der Tabelle. Die Einschränkung der Fremdschlüssel gibt an, dass sich die Spalte in der Tabelle auf den Primärschlüssel in einer anderen Tabelle bezieht. Siehe die Erstellung der Schülertabellenstudenten, die Primärschlüssel, eindeutige Einschränkungen und Standardwerte enthält.

See all articles