sql >> Database teknologi >  >> RDS >> SQLite

Sådan trimmes en streng i SQLite

Problem:

Du vil gerne fjerne mellemrum eller et bestemt tegn fra begyndelsen og slutningen af ​​en streng i SQLite.

Eksempel:

Vores database har en tabel med navnet category med data i to kolonner:id og name .

id navn
1 ' slik '
2 'kød '
3 'grøntsager'

Lad os trimme navnet på hver kategori af produkter for at fjerne den unødvendige plads i begyndelsen og slutningen.

Løsning:

Vi bruger TRIM fungere. Her er den forespørgsel, du ville skrive:

SELECT TRIM(' ', name) AS new_name
FROM category;

Bemærk, at tegnet, der skal fjernes, er valgfrit; du kan blot angive navnet på kolonnen, hvis du vil fjerne mellemrumstegnet:

SELECT TRIM(name) AS new_name
FROM category;

Her er resultatet af begge forespørgsler:

nyt_navn
'slik'
'kød'
'grøntsager'

Diskussion:

Brug TRIM funktion i en SQLite-database, hvis du vil trimme en streng i en tabel. Denne funktion giver dig mulighed for at fjerne et bestemt tegn fra begyndelsen og/eller slutningen af ​​en streng. Det kræver følgende argumenter:

  • Tegnet du vil trimme fra strengen, som er et mellemrum som standard.
  • Navnet på den strengkolonne, der skal trimmes.

I vores eksempel ser det sådan ud:

TRIM(' ' , name)

SQLite giver os også mulighed for at fjerne et mellemrum eller andre tegn kun fra begyndelsen eller slutningen af ​​en streng.

Eksemplet nedenfor fjerner mellemrummet fra slutningen af ​​hvert kategorinavn ved hjælp af RTRIM() funktion:

SELECT RTRIM(name) AS new_name
FROM company;
nyt_navn
' slik'
'kød'
'grøntsager'

Ligesom TRIM() , RTRIM() funktion tager to argumenter:tegnene, der skal fjernes, og strengen, der skal trimmes. Igen kan du blot angive navnet på kolonnen, hvis tegnet, der skal trimmes, er et mellemrum.

Hvis du gerne vil fjerne tegn fra begyndelsen af ​​en streng, men ikke fra slutningen, skal du bruge LTRIM() funktion:

SELECT LTRIM(name) AS new_name
FROM company;

Selvfølgelig kan du bruge denne funktion med to argumenter:tegnene der skal fjernes og strengen der skal trimmes.

Forespørgslen ovenfor returnerer navnekolonnen uden et mellemrum i begyndelsen:

nyt_navn
'slik '
'kød '
'grøntsager'

  1. Oprettelse af en webapp fra bunden ved hjælp af Python Flask og MySQL:Del 5

  2. Fejlfinding AlwaysOn – Nogle gange kræver det mange sæt øjne

  3. BRUG TIP og DISABLE_OPTIMIZED_NESTED_LOOP

  4. UUID ydeevne i MySQL?