SQL 解鎖 - 美國 ZIP Code 郵遞區號

更新於 發佈於 閱讀時間約 3 分鐘

處理美國地區 ZIP Code 郵遞區號相關的資料問題應該是許多外企資料分析師每天都會處理的問題,ZIP Code 通常是在做區域相關分析的最小、訂單能記錄到最細的標準化單位,引此了解一些處理ZIP Code的眉角對於資料處理、分析、視覺化,以至於建構模型是非常重要的喔! 本篇就讓我們拿一些實例與各位分享。

什麼是Zip Code

ZIP Code 是美國郵政使用的一種郵遞區號,一般常以大寫ZIP。ZIP是英語Zone Improvement Plan(地區改進計劃)的簡稱,它暗示郵件可以以更有效率及快捷地送到目的地。最基本的ZIP編號包括五個號碼,隨後增加了四個號碼,使郵件可以更精確地傳送到目的地。增加號碼後的ZIP編號稱為"ZIP+4"。ZIP編號曾被美國郵政註冊成一個商標,但其註冊至今已經過期。

格式

如同上述,ZIP code 通常是純數字格式,標準的格式是五位數字,例如"28230" ,和"ZIP+4",比如"999290531"或"99929-0531"。美國東北某些區域的ZIP code是以0開頭,比如"01172"或"012402123"。因為連接符號"-"和開頭0的性質,即便主要格式是數字,ZIP code 欄位常常在資料庫裡還是會以文字格式儲存。

JOIN
  • 兩表都是九位數字,但其中一張表有連接符號"-",另一張沒有,這樣是幾乎JOIN不到資料的。或是,一張表是5位數字,另一張是九位數字,這樣也是JOIN不到資料的。
raw-image
  • 兩表都是五位數字,但其中一張是數字格式,另一張是文字格式,有些軟體會報錯,有些會連接可以連接到的。若確定兩張表都是五位數字且沒有連接符號"-",把文字格式cast成數字是可行的。
raw-image


  • 一張表是五位數字,另一張九位數字但沒有連接符號"-",兩張表皆為文字格式。因為位數不同,若不做left(ZIPCODE,5)處理是連接不到彼此的。
raw-image


  • 類似上一個狀況,但兩張表皆為數字格式,這時作left(ZIPCODE,5)會相當危險,因為你可能會把錯誤的把11231234(前5位是11231)連結到11231。
raw-image
  • 綜合各種狀況的資料表,有些資料表有5碼+9碼,有些只有5碼,有些是數字格式,有些是文字格式,讓處理起來讓人不是非常放心,我到底有沒有JOIN對的資料啊?
一勞永逸

我這裡提供了一個流程讓您不用再去判斷上述狀況(假設資料只要JOIN上5碼的ZIP code)。

首先,新增一個欄位叫zipcode_adj (文字格式),先把多餘的符號去掉。

zipcode_adj = replace([zipcode], '-' , '')

接著,如果有發現出現4碼或8碼長度的資料,在前頭補一個0。

Update TABLE1​

set zipcode_adj = '0' + zipcode_adj

where  len(zipcode_adj) in (4,8)

把兩個(或以上)的資料集都按照此方法處理後再作JOIN,就可避免上述的失誤囉。

UPDATE A
SET A.Col  = B.Col
FROM TABLE1​ A
INNER JOIN TABLE2​ B
ON
LEFT(A.zipcode_adj ,5) =  LEFT(B.zipcode_adj,5)


遵循著我們上述的思考脈絡,希望能對您思考這類問題有所助益,也謝謝您撥冗完食。這些內容是根據我過去在外商的經驗,非常歡迎業界先進留言與我交流,我也會不定期補充我的觀點,也歡迎Follow我的Threads,持續都會有這類問題討論和生產力提升的點子喔!

avatar-img
33會員
66內容數
我們秉持著從原人進化的精神,不斷追求智慧的累積和工具的運用來提升生產力。我們相信,每一個成員都擁有無限的潛力,透過學習和實踐,不斷成長和進步。
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
你可能也想看
Google News 追蹤
Thumbnail
隨著理財資訊的普及,越來越多台灣人不再將資產侷限於台股,而是將視野拓展到國際市場。特別是美國市場,其豐富的理財選擇,讓不少人開始思考將資金配置於海外市場的可能性。 然而,要參與美國市場並不只是盲目跟隨標的這麼簡單,而是需要策略和方式,尤其對新手而言,除了選股以外還會遇到語言、開戶流程、Ap
Thumbnail
嘿,大家新年快樂~ 新年大家都在做什麼呢? 跨年夜的我趕工製作某個外包設計案,在工作告一段落時趕上倒數。 然後和兩個小孩過了一個忙亂的元旦。在深夜時刻,看到朋友傳來的解籤網站,興致勃勃熬夜體驗了一下,覺得非常好玩,或許有人玩過了,但還是想寫上來分享紀錄一下~
Thumbnail
商業簡報不僅僅是呈現數據,更需要深入瞭解數據分析及有效的工具運用。本文探討於Excel中使用不同函數來改善數據處理效率,包括IF、IFS、VLOOKUP、XLOOKUP及INDEX與MATCH的結合,幫助商業人士更好地從數據中提取洞見,助力業務增值,學習優化數據分析過程,讓您的商業簡報更具影響力。
Thumbnail
利用文字紀錄,明確寫下自己的採購項目......
Thumbnail
如果你最近去過美國郵局,你可能會「注意到」(留意到)寄包裹和信件的人變少了。
Thumbnail
日前在LINE社群,有網友提出一個問題,要把資料進行分析,用日期來計算出將對應的資料。 原始資料,密密麻麻的數據,都看不清楚了 放大一點點 要把這些資料不同『料號』的各種『狀態』依據『日期』進行分析。 有興趣可以下載試著挑戰看看:檔案下載 作法有很多種,當然也可以用函數處
Thumbnail
這篇文章介紹了一個在 Excel 中將郵遞區號加上括號的公式,並分析了公式的原理。這是一篇對於 Excel 公式拆解感興趣的人有價值的文章。
Thumbnail
在職場上,我們經常需要使用Excel來處理資料,而條碼則是一種常見的資料識別方式,可以用來標示產品、貨物、文件等。如果可以快速製作出條碼,就可以節省不少時間,讓工作更有效率。本篇文章將教你如何在Excel中快速製作條碼,只要3個步驟,就可以輕鬆完成。
Thumbnail
隨著理財資訊的普及,越來越多台灣人不再將資產侷限於台股,而是將視野拓展到國際市場。特別是美國市場,其豐富的理財選擇,讓不少人開始思考將資金配置於海外市場的可能性。 然而,要參與美國市場並不只是盲目跟隨標的這麼簡單,而是需要策略和方式,尤其對新手而言,除了選股以外還會遇到語言、開戶流程、Ap
Thumbnail
嘿,大家新年快樂~ 新年大家都在做什麼呢? 跨年夜的我趕工製作某個外包設計案,在工作告一段落時趕上倒數。 然後和兩個小孩過了一個忙亂的元旦。在深夜時刻,看到朋友傳來的解籤網站,興致勃勃熬夜體驗了一下,覺得非常好玩,或許有人玩過了,但還是想寫上來分享紀錄一下~
Thumbnail
商業簡報不僅僅是呈現數據,更需要深入瞭解數據分析及有效的工具運用。本文探討於Excel中使用不同函數來改善數據處理效率,包括IF、IFS、VLOOKUP、XLOOKUP及INDEX與MATCH的結合,幫助商業人士更好地從數據中提取洞見,助力業務增值,學習優化數據分析過程,讓您的商業簡報更具影響力。
Thumbnail
利用文字紀錄,明確寫下自己的採購項目......
Thumbnail
如果你最近去過美國郵局,你可能會「注意到」(留意到)寄包裹和信件的人變少了。
Thumbnail
日前在LINE社群,有網友提出一個問題,要把資料進行分析,用日期來計算出將對應的資料。 原始資料,密密麻麻的數據,都看不清楚了 放大一點點 要把這些資料不同『料號』的各種『狀態』依據『日期』進行分析。 有興趣可以下載試著挑戰看看:檔案下載 作法有很多種,當然也可以用函數處
Thumbnail
這篇文章介紹了一個在 Excel 中將郵遞區號加上括號的公式,並分析了公式的原理。這是一篇對於 Excel 公式拆解感興趣的人有價值的文章。
Thumbnail
在職場上,我們經常需要使用Excel來處理資料,而條碼則是一種常見的資料識別方式,可以用來標示產品、貨物、文件等。如果可以快速製作出條碼,就可以節省不少時間,讓工作更有效率。本篇文章將教你如何在Excel中快速製作條碼,只要3個步驟,就可以輕鬆完成。