您是否可以將郵編轉換爲MySQL中的Z + 4?我遇到了一些問題,我有一些郵編有多種數字。將郵政編碼轉換爲郵政編碼+4 MySQL
例如,我們發貨到波多黎各,郵政編碼以兩個零開頭:00XXX
這會給我一個沒有前導零的三個數字「XXX」的文本。
對於緬因州等州來說,郵政編碼從一個零開始:0XXXX
這會給我四個數字「XXXX」。
對於美國的大多數州來說,我會得到一個標準的5個字符的郵政編碼,這很好。但是,如果客戶也輸入了他們的Z + 4呢?我會有9個字符。
什麼讓它更加複雜的是,當美國東北部的客戶給Z + 4。 (0XXXX-XXXX)
所以我會定期爲我的郵編區域提供以下類型。
Puerto Rico(XXX);
美國東北部(XXXX);
Regular Zip(XXXXX);
Northeast US + 4(XXXXXXXX);
Regular Zip + 4(XXXXXXXXX)
我無法弄清楚如何將它們轉換。我知道它應該是什麼數據類型。任何的意見都將會有幫助。
另外,如果我想要在郵編+4的「 - 」怎麼辦?這樣它會是XXXXX-XXXX或0XXXX-XXXX?
目前我正在使用varchar(10),但是當我導入它時,無論如何都會從我的文本文件中取消前導零。在這種情況下,我必須將Zip轉換爲XXXXX-XXXX或0XXXX-XXXX的格式,然後將其上傳。只是想使這個自動化,而不必擔心錯過一個郵編,並在運輸過程中出現錯誤。
這是一次性的事情還是你想插入/更新? – aust
你應該使用'Char(9)'或'VARCHAR(9)'。郵政編碼不是數字,使用一個數據類型將刪除前面的零('0')。由於緬因州有效的郵政編碼是以「0」開始的5個字符,因此數字類型永遠不會允許您存儲它;一個字符類型的列將保持前面的「0」。 –
我們不斷得到訂單,每天幾千個。我已經通過我制定的Excel公式轉換了它們,但我在Excel中遇到了8個字符拉鍊(如東北美國+4)的問題。我想要一個更自動化的方式來避免任何錯誤。 – Nelson