Heim > Datenbank > MySQL-Tutorial > Hauptteil

MySQL- und Oracle-Unterschiedsvergleich 3 Funktionen

黄舟
Freigeben: 2017-01-17 11:48:01
Original
1297 Leute haben es durchsucht

MySQL- und Oracle-Unterschiedsvergleich drei Funktionen

Funktion

Zahlenkategorie ORACLE MYSQL-Kommentar

1 Numerische Funktion Round(1.23456,4) Round (1.23456,4) Das Gleiche wie:
ORACLE: wähle den Wert „round(1.23456,4)“ aus Dual aus
MYSQL: wähle den Wert „round(1.23456,4)“

2 abs(-1) abs( -1) Funktion: Ermitteln Sie den absoluten Wert der aktuellen Daten
Verwendung: Die Verwendung von Oracle und MySQL ist dieselbe
MySQL: Wählen Sie den Wert „abs(-1)“ aus
Oracle: Wählen Sie den Wert „abs(-1)“ aus Wert aus Dual

3 Decke(-1.001)) Decke(-1.001) Funktion: Gibt die kleinste ganze Zahl zurück, die nicht kleiner als value
oracle: select ceil(-1.001) value from dual


4 floor(-1.001) floor(-1.001) Funktion: Gibt den maximalen ganzzahligen Wert zurück, der nicht größer als X ist

Verwendung :

MySQL: Bodenwert (-1,001) auswählen
Oracle: Bodenwert (-1,001) aus Dual auswählen



5 Max(expr)/Min(expr) Max (expr)/Min(expr) Funktion: Gibt den minimalen oder maximalen Wert von expr zurück. MIN() und MAX() können ein String-Argument akzeptieren; in diesem Fall geben sie den übergebenen minimalen oder maximalen String zurück.

Verwendung:

ROACLE: wähle max(user_int_key) aus sd_usr;
MYSQL: wähle max(user_int_key) aus sd_usr;

6 String-Funktion ascii(str) ascii(str) Funktion: Gibt den ASCII-Codewert des Zeichens ganz links in der Zeichenfolge str zurück. Wenn str ein leerer String ist, ist der Rückgabewert 0. Wenn str ein NULL-Wert ist, ist auch der Rückgabewert NULL.
Verwendung:

mysql:ascii('a')-Wert auswählen

Oracle:ascii('a')-Wert aus Dual auswählen


7 CHAR(N,...) CHAR(N,...) Funktion: CHAR() interpretiert Parameter im Ganzzahltyp und gibt die Zeichen zurück, die aus den Zeichen
bestehen, die durch den dargestellten ASCII-Codewert gegeben sind durch die Ganzzahlzeichenfolge. NULL-Werte werden ignoriert.
Verwendung:

mysql:select char(97) value

oracle:select chr(97) value from dual



8 REPLACE( str,from_str,to_str) REPLACE(str,from_str,to_str) Funktion: Alle Vorkommen des Strings from_str im String str werden durch to_str ersetzt und dann wird der String zurückgegeben
Verwendung:
mysql: SELECT REPLACE ('abcdef', 'bcd', 'ijklmn') value

oracle: SELECT Replacement('abcdef', 'bcd', 'ijklmn') value from dual





9 INSTR('sdsq','s',2) INSTR('sdsq','s') Die Anzahl der Parameter ist unterschiedlich
ORACLE: Wählen Sie INSTR('sdsq','s',2 ) Wert aus Dual (Erforderlich, um an Position 2 zu beginnen)
MYSQL: select INSTR('sdsq','s') value (starten an der Standardposition 1)

10 SUBSTR('abcd', 2,2) Teilzeichenfolge ('abcd',2,2) Funktionsnamen sind unterschiedlich:
ORACLE: wähle substr('abcd',2,2) Wert aus Dual
MYSQL: wähle Teilzeichenfolge('abcd', 2,2) value

11 instr('abcdefg','ab')locate('ab','abcdefg') Die Funktionsnamen sind unterschiedlich:
instr ->locate (Hinweis: die Ort der Teilzeichenfolge von „locate“ und der Gesamtzeichenfolge (zu vertauschen)
ORACLE: SELECT instr('abcdefg', 'ab') VALUE FROM DUAL

MYSQL: SELECTlocate('ab', 'abcdefg') VALUE


12 length (str ) char_length() Funktionsnamen sind unterschiedlich:
ORACEL: SELECT length('AAAASDF') VALUE FROM DUAL
MYSQL: SELECT char_length('AAAASDF') VALUE

13 REPLACE('abcdef', ' bcd', 'ijklmn') REPLACE('abcdef', 'bcd', 'ijklmn') Gleich wie:
ORACLE: SELECT REPLACE('abcdef', 'bcd' , 'ijklmn') Wert aus Dual
MYSQL : SELECT REPLACE('abcdef', 'bcd', 'ijklmn') Wert

14 LPAD('abcd',14, '0') LPAD( 'abcd',14, '0') Das Gleiche wie:
ORACLE: LPAD('abcd',14, '0')-Wert aus Dual auswählen
MYSQL: LPAD('abcd',14, '0') auswählen ') Wert aus Dual

15 UPPER (iv_user_id) UPPER(iv_user_id) Das Gleiche wie:
ORACLE: select UPPER(user_id) from sd_usr;
MYSQL: select UPPER(user_id) from sd_usr

16 LOWER(iv_user_id) LOWER(iv_user_id) Gleiches:
ORACLE: wähle LOWER(user_id) aus sd_usr;
MYSQL: wähle LOWER(user_id) aus sd_usr;

17 Kontrollflussfunktion nvl(u.email_address, 10) IFNULL(u.email_address, 10)
oder
ISNULL(u.email_address) Funktionsnamen sind unterschiedlich (wählen Sie je nach verschiedenen Funktionen aus):
ORACLE: Wählen Sie u.email_address aus , nvl(u.email_address, 10) Wert aus sd_usr u (Wenn u.email_address=NULl, ersetzen Sie den Wert durch 10 in der Datenbank)
MYSQL: Wählen Sie u.email_address, IFNULL(u.email_address, 10) Wert aus sd_usr u(wenn u.email_address=NULL, ist das angezeigte Ergebnis 10, anstatt seinen Wert durch 10 in der Datenbank zu ersetzen)
wählen Sie u.email_address, ISNULL(u.email_address)-Wert aus sd_usr u(wenn u. Wenn email_address NULL ist , es wird 1 angezeigt, andernfalls wird 0 angezeigt)

18 DECODE(iv_sr_status,g_sr_status_com, ld_sys_date, NULL) Keine, bitte verwenden Sie stattdessen die IF- oder CASE-Anweisung.
IF-Anweisung Format: (Ausdruck1, Ausdruck2, Ausdruck3) Beschreibung:
1. Dekodierung (Bedingung, Wert 1, Übersetzungswert 1, Wert 2, Übersetzungswert 2,... Wert n, Übersetzungswert n, Standardwert)
Die Bedeutung dieser Funktion ist wie folgt:
WENN Bedingung = Wert 1 DANN
RETURN (Übersetzungswert 1)
ELSIF-Bedingung = Wert 2 DANN
RETURN (Übersetzungswert 2)
. . ...
ELSIF-Bedingung = Wert n THEN
RETURN (Übersetzungswert n)
ELSE
RETURN (Standardwert)
END IF

2 Beschreibung
Funktion: Wenn expr1 TRUE ist (expr1 <> 0 und expr1 <> NULL), ist der Rückgabewert von IF() expr2; andernfalls ist der Rückgabewert expr3. Der Rückgabewert von IF() ist je nach
-Kontext ein numerischer Wert oder ein String-Wert.
Verwendung:
mysql: SELECT IF(1>2,2,3);

19 Typkonvertierungsfunktion TO_CHAR(SQLCODE) date_format/ time_format Funktionsnamen sind unterschiedlich

SQL> ; select to_char(sysdate,'yyyy-mm-dd') from dual;
SQL> select to_char(sysdate,'hh24-mi-ss') from dual;
mysql> ' %Y-%m-%d');
mysql> select time_format(now(),'%H-%i-%S');

20 to_date(str,format) STR_TO_DATE ( str,format) Funktionsnamen sind unterschiedlich:

ORACLE: SELECT to_date('2009-3-6','yyyy-mm-dd') VAULE FROM DUAL
MYSQL: SELECT STR_TO_DATE('2004-03- 01' , '%Y-%m-%d') VAULE

21 trunc(-1.002) cast(-1.002 as SIGNED) Der Funktionsname ist unterschiedlich:

Der durch TRUNC abgeschnittene Datumswert Funktion für das angegebene Element.
ORACLE: Wählen Sie den Trunc-Wert (-1.002) aus Dual aus Die Konvertierung ist dieselbe wie bei SQL Server, die Typparameter unterscheiden sich jedoch etwas: CAST(xxx AS-Typ), CONVERT(xxx, Typ), der Typ muss die folgenden Typen verwenden:

Verfügbare Typen
Binär, mit der Wirkung des binären Präfixes: BINARY
Zeichentyp, kann Parameter annehmen: CHAR()
Datum: DATE
Zeit: TIME
Datums- und Uhrzeittyp: DATETIME
Gleitkomma Zahl: DECIMAL
Ganzzahl: SIGNED
Ganzzahl ohne Vorzeichen: UNSIGNED

22 TO_NUMBER(str) CAST("123" AS SIGNED INTEGER) Funktionsnamen sind unterschiedlich
ORACLE:SELECT TO_NUMBER('123 ') AS VALUE FROM DUAL;
MYSQL: SELECT CAST("123" AS SIGNED INTEGER) als Wert;
SIGNED INTEGER: signierte Ganzzahl

23 Datumsfunktion SYSDATE now() / SYSDATE() Verschiedene Schreibmethoden:
ORACLE:wählen Sie den SYSDATE-Wert aus Dual
MYSQL:wählen Sie den Wert „now()“ aus
wählen Sie den Wert „sysdate()“ aus

24 Next_day(sysdate,7) Passen Sie eine Funktion an: F_COMMON_NEXT_DAY (date,int) Die Funktionsnamen sind unterschiedlich:
ORACLE: SELECT Next_day(sysdate,7) value FROM DUAL
MYSQL: SELECT F_COMMON_NEXT_DAY(SYSDATE(), 3) value from DUAL;
(3: bezieht sich auf den Indexwert der Woche) return Das angegebene Datum der nächsten Woche

25 ADD_MONTHS(sysdate, 2) DATE_ADD(sysdate(), Intervall 2 Monat) Funktionsnamen sind unterschiedlich:
ORACLE: SELECT ADD_MONTHS(sysdate, 2) als Wert von DUAL;
MYSQL: SELECT DATE_ADD(sysdate(), Intervall 2 Monat) als Wert von DUAL;

26 Subtrahiere 2 Daten (D1-D2) DATEDIFF(Datum1,Datum2) Funktion: Gibt die Anzahl der Tage zwischen zwei Daten zurück.
Verwendung:
mysql: SELECT DATEDIFF('2008-12-30','2008-12-29') AS DiffDate
oracle: Subtrahiere direkt zwei Daten (z. B. d1-d2=12.3)

27 SQL-Funktion SQLCODE Es gibt keine entsprechende Funktion in MYSQL, aber SQLException in JAVA. Die Funktion getErrorCode() kann die Fehlernummer abrufen. Die integrierten Funktionen SQLCODE und SQLERRM von Oracle werden speziell im OTHERS-Prozessor verwendet, um den Fehlercode bzw. die Fehlermeldung von Oracle zurückzugeben.
MYSQL: Sie können den Fehlercode, den Fehlerstatus und die Fehlermeldung von JAVA abrufen

28 SQLERRM Es gibt keine entsprechende Funktion in MYSQL, aber SQLException in JAVA. Die Funktion getMessage() kann die integrierten Funktionen SQLCODE und SQLERRM von Oracle abrufen, die speziell im OTHERS-Prozessor verwendet werden, um den Fehlercode bzw. die Fehlermeldung von Oracle zurückzugeben.
MYSQL: Sie können den Fehlercode, den Fehlerstatus und die Fehlermeldung von JAVA abrufen

29 SEQ_BK_DTL_OPT_INT_KEY.NEXTVAL Spalte mit automatischer Vergrößerung Es handelt sich um eine Spalte mit automatischer Vergrößerung in MYSQL. Die folgende Methode wird zum Abrufen verwendet die neueste ID:
START TRANSACTION ;
INSERT INTO user(username,password)
VALUES (username,MD5(password));
SELECT LAST_INSERT_ID() INTO id;
COMMIT; 🎜>

30 SUM(enable_flag) SUM(enable_flag) Dasselbe wie:

ORCALE: SELECT SUM(enable_flag) FROM SD_USR;
MYSQL: SELECT SUM(enable_flag) FROM SD_USR;

31 DBMS_OUTPUT.PUT_LINE(SQLCODE) in MYSQL Keine Die entsprechende Methode dient zum Drucken in der Konsole zum Testen und hat keine Auswirkungen auf die Migration. dbms_output.put_line kann nur 255 Zeichen pro Zeile anzeigen. Bei Überschreitung wird ein Fehler gemeldet


Verwandte Etiketten:
Quelle:php.cn
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage