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+');