我在數據庫中有一堆電話號碼,格式如下:(999)123-3456。在MySQL中格式化電話號碼
我需要他們的樣子123-123-1234
是否有任何形式的正則表達式或東西,我可以在MySQL做快速格式化所有這些電話號碼?另外,令人沮喪的是,有些不是這樣的格式,所以我不能將它應用到整個列。
謝謝!
我在數據庫中有一堆電話號碼,格式如下:(999)123-3456。在MySQL中格式化電話號碼
我需要他們的樣子123-123-1234
是否有任何形式的正則表達式或東西,我可以在MySQL做快速格式化所有這些電話號碼?另外,令人沮喪的是,有些不是這樣的格式,所以我不能將它應用到整個列。
謝謝!
一個快速的解決辦法是運行這兩個查詢:
UPDATE table_name set PhoneCol = REPLACE(PhoneCol, '(', '');
UPDATE table_name set PhoneCol = REPLACE(PhoneCol, ') ', '-');
工作完美,快速,輕鬆!謝謝! – Sara
只需編寫一個循環遍歷所有值並更新它們的小php腳本。在php中進行這種改變非常簡單。然後在該行上運行更新以覆蓋該值。
Prob寫一個腳本不是一個好主意,最好使用MySQL函數。使用PHP要慢得多 –
如果你使用PHP,你會有更多的靈活性。她提到並非所有格式都是相同的,所以PHP可以更好地將它們「修復」成單一格式。如果這只是一次轉換,誰在乎速度? – Landon
也許是一個兩通的解決方案。
存儲爲VARCHAR處理? – stslavik