sql >> Databáze >  >> RDS >> Oracle

Jak nahradit nový řádek v Oracle

Problém:

Chcete odstranit konec řádku ve sloupci.

Příklad:

Naše databáze obsahuje tabulku s názvem address_book s údaji ve sloupcích city_name a company_address . Chtěli byste nahradit každou z karet a zalomení řádků v company_address sloupec s „ “ (mezera), aby byl vizuálně přitažlivější.

city_name adresa_společnosti
Tokio 15th Oreo Street,

Tokio

9870-11
Varšava 18 Marszalkowska Ave,

Varšava

03-654
Accra 123 Banana Junction,

Circle-Accra,

00244
Berlín 25th Mango Avenue,

Asylum Down,

DE-1234

Řešení:

Zde je dotaz:

SELECT
   city_name,
   REPLACE(company_address, CHR(10) || CHR(13) || CHR(9), ‘ ‘)
FROM address_book;

Zde je výsledek dotazu:

city_name adresa_společnosti
Tokio 15th Oreo Street, Tokio 9870-11
Varšava 18 Marszalkowska Ave, Varšava 03-654
Accra 123 Banana Junction, Circle-Accra, 00244
Berlín 25th Mango Avenue, Asylum Down, DE-1234

Diskuse:

REPLACE() Funkce se obecně používá k nahrazení všech výskytů zadaného řetězce v řetězci jiným řetězcem. Můžete se zeptat, proč jsme použili CHR(10) a CHR(13) ve výše uvedeném příkladu. CHR() funkce se používá k vložení řídicích znaků do řetězce. CHR(10) se používá pro vkládání zalomení řádků, CHR(9) je pro karty a CHR(13) je pro vrácení vozíku.

Ve výše uvedeném příkladu jsme chtěli odstranit všechny výskyty konce řádku, tabulátoru a konce řádku, takže jsme použili CHR(10) , CHR(9) a CHR(13) . Lze je kombinovat pomocí znaku zřetězení v Oracle (|| ) pro odstranění všech jejich výskytů ve sloupci. Příklad syntaxe je REPLACE(string, CHR(10) || (CHR(13) || CHR(09), ‘ ‘ ) .


  1. Jak odstranit úvodní nuly z dat v Oracle

  2. Jaké dovednosti a znalosti potřebují návrháři databází?

  3. Syntaxe SQL TRUNCATE – uvedena v DBMS

  4. Jak v PHP s PDO zkontrolovat finální parametrizovaný dotaz SQL?