PostgreSQL
 sql >> Baza danych >  >> RDS >> PostgreSQL

Wyodrębnij pierwszą numeryczną część pola

SELECT substring(address, '^\\d+') AS heading_number
FROM   tbl
WHERE  zip = 12345
AND    address ILIKE '3%'

Zwraca 1 lub więcej cyfr od początku ciągu.
Pomiń kotwicę ^ jeśli chcesz pierwszy ciąg cyfr w ciągu znaków zamiast sekwencji na początku . Przykład:

SELECT substring('South 13rd street 3452435 foo', '\\d+');

Przeczytaj o substring() i wyrażenia regularne w instrukcji.
W nowszych wersjach (8.0+, z standard_conforming_strings = on ), użyj składni ciągu znaków ucieczki tak:

SELECT substring('South 13rd street 3452435 foo', E'\\d+');

Lub po prostu:

SELECT substring('South 13rd street 3452435 foo', '\d+');



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak znaleźć zduplikowane rekordy w PostgreSQL

  2. Jak działa funkcja Exp() w PostgreSQL

  3. PostgreSQL unescape string JSON

  4. Wstawianie NULL/pustego ciągu za pomocą biblioteki libpqxx

  5. Jak dodać automatycznie zwiększający się klucz podstawowy do istniejącej tabeli w PostgreSQL?