Oracle
 sql >> Baza danych >  >> RDS >> Oracle

Jak mogę policzyć liczbę słów w ciągu w Oracle?

Możesz użyć czegoś podobnego do tego. Pobiera długość ciągu, a następnie odejmuje długość ciągu z usuniętymi spacjami. Dodanie do tego liczby jeden powinno dać liczbę słów:

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

Zobacz SQL Fiddle z demonstracją

Jeśli używasz następujących danych:

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
;

I zapytanie:

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

Wynik:

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


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Wstawianie danych SQL Server za pomocą Oracle® SQL*Loader

  2. ORA-01460:zażądano niewdrożonej lub nieuzasadnionej konwersji

  3. Błąd podczas dodawania trybu gotowości

  4. Metadane dotyczące typów rekordów na poziomie pakietu PL/SQL

  5. Proces aktualizacji krok po kroku dla aktualizacji R12.2 część -4 (stosowanie pakietu aktualizacji wersji 12.2.x)