sql >> Database teknologi >  >> RDS >> Oracle

Hvordan kan jeg tælle antallet af ord i en streng i Oracle?

Du kan bruge noget lignende dette. Dette får længden af ​​strengen, og trækker derefter længden af ​​strengen med mellemrummene fjernet. Ved derefter at tilføje tallet et til det skulle du få antallet af ord:

Select length(yourCol) - length(replace(yourcol, ' ', '')) + 1 NumbofWords
from yourtable
 

Se SQL Fiddle with Demo

Hvis du bruger følgende data:

CREATE TABLE yourtable
    (yourCol varchar2(15))
;

INSERT ALL 
    INTO yourtable (yourCol)
         VALUES ('Hello To Oracle')
    INTO yourtable (yourCol)
         VALUES ('oneword')
    INTO yourtable (yourCol)
         VALUES ('two words')
SELECT * FROM dual
;
 

Og forespørgslen:

Select yourcol,
  length(yourCol) - length(replace(yourcol, ' ', '')) + 1 NumbofWords
from yourtable
 

Resultatet er:

| YOURCOL | NUMBOFWORDS | --------------------------------- | Hello To Oracle | 3 | | oneword | 1 | | two words | 2 |

  1. Overvågning af PostgreSQL i et hybridmiljø

  2. Brug af Trace Flag 3226 til at undertrykke log-backup-logning

  3. Sådan installeres og konfigureres ClickHouse på Ubuntu 20.04

  4. Introduktion af afspilning – Nyt tidspunkt diagnose for Spotlight Cloud