sql >> Databáze >  >> RDS >> Database

Jak nahradit část řetězce v SQL

Problém:

Rádi byste nahradili část řetězce jiným řetězcem.

Příklad:

Naše databáze obsahuje tabulku s názvem investor s údaji v následujících sloupcích:id , company a phone .

id společnost telefon
1 Velký trh 123–300-400
3 Restaurace Sunny 123–222-456
4 Moje banka 123-345-400

Rádi bychom změnili formát telefonního čísla pro každou společnost nahrazením znaku pomlčky mezerou.

Řešení:

SELECT REPLACE( phone, '-', ' ' ) as new_phone
FROM investor;

Dotaz vrátí seznam telefonních čísel s mezerami místo pomlček jako oddělovačů:

new_phone
123 300 400
123 222 456
123 345 400

Diskuse:

Pokud chcete nahradit podřetězec jiným řetězcem, jednoduše použijte REPLACE funkce. Tato funkce má tři argumenty:

  • Řetězec, který se má změnit (což v našem případě byl sloupec).
  • Podřetězec, který se má nahradit.
  • Řetězec, kterým se má nahradit zadaný podřetězec.

V dalším příkladu nahradíme přídavné jméno 'Big' v company sloupec s 'Malý'.

SELECT REPLACE( company, 'Big', 'Small' ) as new_company
FROM investor
WHERE id = 1;

Tento dotaz zobrazí nový název společnosti pro investora s id = 1 .

new_company
Malý trh

  1. Jíst naše vlastní krmivo pro psy – Spuštění JIRA na MariaDB

  2. Oracle jak exportovat dotaz do textového/csv souboru

  3. Podporuje Python připravené příkazy MySQL?

  4. Kdy mám použít CROSS APPLY přes INNER JOIN?