Problema:
Você gostaria de remover uma quebra de linha em uma coluna.
Exemplo:
Nosso banco de dados tem uma tabela chamada
address_book com dados nas colunas city_name e company_address . Você deseja substituir cada uma das guias e as quebras de linha no company_address coluna com ‘ ‘ (um espaço) para torná-la mais atraente visualmente. | city_name | company_address |
|---|---|
| Tóquio | Rua 15 Oreo, Tóquio 9870-11 |
| Varsóvia | 18 Marszalkowska Avenue, Varsóvia 03-654 |
| Acra | 123 Banana Junction, Círculo-Acra, 00244 |
| Berlim | 25th Mango Avenue, Asilo para baixo, DE-1234 |
Solução:
Segue a consulta:
SELECT city_name, REPLACE(company_address, CHR(10) || CHR(13) || CHR(9), ‘ ‘) FROM address_book;
Segue o resultado da consulta:
| city_name | company_address |
|---|---|
| Tóquio | 15th Oreo Street, Tóquio 9870-11 |
| Varsóvia | Ave Marszalkowska 18, Varsóvia 03-654 |
| Acra | 123 Banana Junction, Circle-Accra, 00244 |
| Berlim | 25th Mango Avenue, Asylum Down, DE-1234 |
Discussão:
O
REPLACE() A função geralmente é usada para substituir todas as ocorrências de uma string especificada em uma string por outra string. Você pode perguntar por que usamos CHR(10) e CHR(13) no exemplo acima. O CHR() A função é usada para inserir caracteres de controle em uma string. CHR(10) é usado para inserir quebras de linha, CHR(9) é para guias e CHR(13) é para retornos de carro. No exemplo acima, queríamos remover todas as ocorrências de quebra de linha, tabulação e retorno de carro, então usamos
CHR(10) , CHR(9) e CHR(13) . Eles podem ser combinados usando o sinal de concatenação no Oracle (|| ) para remover todas as suas ocorrências em uma coluna. Um exemplo de sintaxe é REPLACE(string, CHR(10) || (CHR(13) || CHR(09), ‘ ‘ ) .