sql >> Database >  >> RDS >> Mysql

De eenvoudigste manier om meerdere spaties toe te voegen aan een string in MySQL - SPACE()

Bij het werken met MySQL-databases kan het gebeuren dat u meerdere spatietekens aan een tekenreeks moet toevoegen.

Misschien moet u een tekenreeks opvullen door voorloop- of volgspaties toe te voegen. Of misschien moet u een enkele spatie binnen de tekenreeks vervangen door veel spaties. Hoe dan ook, MySQL heeft de SPACE() functie om u te helpen.

De SPACE() functie is een gemakkelijke manier voor u om zoveel spatietekens terug te geven als u nodig heeft.

Syntaxis

Zo werkt de syntaxis:

SPACE(N)

Waar N is het aantal spaties dat u moet retourneren. Dus als je 10 spaties nodig hebt, gebruik je SPACE(10) .

Voorbeeld

Hier is een snel voorbeeld om te laten zien hoe SPACE() werkt:

SELECT CONCAT('Cherry', SPACE(8), 'Blossom') AS Result;

Resultaat:

+-----------------------+
| Result                |
+-----------------------+
| Cherry        Blossom |
+-----------------------+

In dit geval voeg ik twee strings samen en voeg ik 8 spaties ertussen toe (dus strikt genomen voeg ik eigenlijk drie strings samen). Om dit te doen, gebruik ik de SPACE() functioneren als een van de argumenten voor de CONCAT() functie.

Dit heeft hetzelfde resultaat als het daadwerkelijk uittypen van alle 8 spaties:

SELECT CONCAT('Cherry', '        ', 'Blossom') AS Result;

Resultaat:

+-----------------------+
| Result                |
+-----------------------+
| Cherry        Blossom |
+-----------------------+

Het verschil is dat u niet al die tekens hoeft in te typen. Plus het gebruik van SPACE() maakt de code gemakkelijker te lezen.

Een andere optie:de REPEAT()-functie

Een andere optie is om de REPEAT() . te gebruiken functie. Dit werkt vergelijkbaar met SPACE() behalve dat REPEAT() stelt u in staat andere tekens op te geven (dus niet alleen spaties).

SELECT CONCAT('Cherry', REPEAT(' ', 8), 'Blossom') AS Result;

Resultaat:

+-----------------------+
| Result                |
+-----------------------+
| Cherry        Blossom |
+-----------------------+

Hoewel, zoals je kunt zien, dit wat extra code vereist die je niet hoeft op te geven bij het gebruik van de SPACE() functie. Dat gezegd hebbende, kan het voorkomen dat REPEAT() werkt beter voor een bepaald scenario.


  1. FOUT:Fout 1005:Kan tabel niet maken (fout:121)

  2. gegevens geladen uit SQLitE-database worden niet opgeslagen in de modelklasse ArrayList android

  3. Hoe verander je mysql in mysqli?

  4. Is het mogelijk om de voorwaarde op te geven in Count()?