sql >> Databáze >  >> RDS >> Mysql

Best Practice / Standard pro ukládání adresy v SQL databázi

Mezinárodní adresy naleznete v Universal Postal Union Poštovní Databáze Addressing Systems .

Adresy v USA naleznete v publikaci USPS 28 "Poštovní adresovací standardy" .

USPS chce následující komponenty adresy bez interpunkce zřetězené na jeden řádek:

  • číslo domu
  • předsměrové (N , SE atd.)
  • ulice
  • přípona (AVE , BLVD atd.)
  • postdirectional (SW , E atd.)
  • jednotka (APT , STE atd.)
  • číslo apartmánu/apartmá

Např. 102 N MAIN ST SE APT B

Pokud ponecháte celý řádek adresy jako jediné pole v databázi, je zadávání a úpravy snadné, ale vyhledávání může být obtížnější (např. v případě SOUTH EAST LANE je ulice EAST jako v S EAST LN nebo je to LANE jako v SE LANE ST ?).

Pokud ponecháte adresu analyzovanou do samostatných polí, bude hledání komponent, jako je název ulice nebo byty, snazší, ale pro výstup musíte připojit vše dohromady, potřebujete Software CASS pro správnou analýzu a PO boxy, adresy venkovské trasy a adresy APO/FPO mají speciální analýzy.

Fyzické místo s více adresami na tomto místě je buď budova s ​​více jednotkami, v takovém případě písmena/čísla za jednotkami jako APT a STE určete adresu, nebo se jedná o komerční agenturu pro příjem pošty (např. obchod UPS) a připojí se číslo poštovní schránky/soukromé poštovní schránky (jako 100 MAIN ST STE B PMB 102 ), nebo se jedná o firmu s jedním doručovacím místem USPS a pošta je směrována po doručení USPS (což obvykle vyžaduje samostatné pole mailstop, které může společnost potřebovat, ale USPS je nebude chtít na řádku adresy).

Kontaktem s více než jednou fyzickou adresou je obvykle firma nebo osoba s adresou a poštovní schránkou. Všimněte si, že je běžné, že každá adresa má jiné PSČ.

Je zcela typické, že jedna obchodní transakce může mít dodací adresu a fakturační adresu (opět s různými PSČ). Informace, které uchovávám pro KAŽDOU adresu, jsou:

  • předpona názvu (DR , MS atd.)
  • křestní jméno a iniciála
  • příjmení
  • přípona názvu (III , PHD atd.)
  • zastavení pošty
  • název společnosti
  • adresa (pouze jeden řádek na Pub 28 pro USA)
  • město
  • stát/provincie
  • PSČ/PSČ
  • země

Obvykle tisknu poštovní zastávky někde mezi jménem osoby a společností, protože země obsahuje stát/PSČ, které obsahuje město, které obsahuje adresu, která obsahuje společnost, která obsahuje zastávku pošty obsahující danou osobu. K ověření a standardizaci adres při zadávání nebo úpravách používám software CASS.



  1. Počet dalších řádků v tabulce se stejnou hodnotou

  2. Neuspořádané výsledky v SQL

  3. Smyčka Bash skriptu přes MySQL

  4. Django+Postgres:aktuální transakce je přerušena, příkazy ignorovány až do konce bloku transakce