surfaceextractionparse_name
Extractionscalar · returns json

PARSE_NAME

Parse person name into JSON with fields: prefix, first, middle, last, suffix, nickname, formatted

Per-row — runs once for each row.

extractionllmtext

Syntax

PARSE_NAME({{ name }})

Arguments

nametypedescription
nameVARCHAR

About

Parse person name into structured components. Handles various formats: "First Last", "Last, First", "Dr. First Middle Last Jr.", and most cultural name patterns supported by python-nameparser. Backend: deterministic Python via `nameparser.HumanName`. Returns prefix / first / middle / last / suffix / nickname / formatted as a JSON object. Use ->> to extract individual fields: PARSE_NAME(full_name) ->> 'first' AS first_name PARSE_NAME(full_name) ->> 'last' AS last_name For LLM-style parsing (ambiguous cultural formats, mixed-language names, edge cases where nameparser struggles), use PARSE_NAME_LLM — see parse_name_single_llm.cascade.yaml.

Examples

First name extracted

SELECT
  parse_name ('Dr. John Michael Smith Jr.')

Last-first format parsed

SELECT
  parse_name ('Smith, Jane')

Nearby rabbit holes

same domain
Climb back to The Looking Glass