Substring index position

Eine Sache, die ich in postgresql beobachtet habe.

Die Position des Substring-Index beginnt bei 1, während in Oracle bei 0 beginnt.

Mein Ziel ist es, alle Funktionen und Prozeduren abzurufen, die eine Teilzeichenfolge mit 0 enthalten. Ich habe das versucht, bekomme es aber nicht hin. Bitte führen.

Dies bezieht sich auf die gesamte Prozedur, aber nicht speziell auf den Inhalt der Teilzeichenfolge

SELECT DISTINCT PRONAME AS SPR, pp.pronamespace::regnamespace::text as schema_name
 FROM PG_PROC pp
 join pg_catalog.pg_user u 
   on pp.proowner = u.usesysid
 WHERE PROSRC LIKE LOWER('%SUBSTR%') 
 AND PROSRC LIKE '%,0,%'
 ORDER BY PRONAME DESC;

Nein, das stimmt nicht.

Quote from the manual

If position is 0, then it is treated as 1.

substr('12345', 1, 1)

Spoiler alert: in beiden Fällen wir 1 zurückgegeben.

Lieb,

Bitte überprüfen Sie die folgende Abfrage.

Wählen Sie substr(‘abc’,0,2);

Orakel: ‘ab’

Während postgresql

select substr(‘abc’,0,2);

Ausgabe: ‘a’

Dieses Thema wurde automatisch 60 Tage nach der letzten Antwort geschlossen. Es sind keine neuen Antworten mehr erlaubt.