Oddity Help Center
How do I join and interpret the NYC Restaurant tables?
Use text identifiers, preserve codes and distinguish inspections from citations.
Start with establishments and join related tables using CAMIS as text. Join violations to inspections using inspection_id. CAMIS identifies a source permit, not a company. Preserve leading zeros in ZIP, phone and geographic codes. Blank CSV values correspond to JSON null and SQLite NULL.
The not_yet_inspected status replaces the source 1900 placeholder; it is not an actual historical inspection. Latest actions belong to their observation dates. Do not combine a latest score with a grade from another inspection without reviewing its separate date and type. A missing grade does not prove safety or noncompliance.
Choose one format per workflow to avoid counting duplicate format copies. If a transfer fails, return to the account download page and contact support with the database, version, order and error.