Apakah ini termasuk:
- Nomor internasional?
- Ekstensi?
- Informasi lain selain nomor sebenarnya (seperti "minta bobby")?
Jika semua ini tidak, saya akan menggunakan bidang 10 karakter dan menghapus semua data non-numerik. Jika yang pertama adalah ya dan dua lainnya tidak, saya akan menggunakan dua bidang varchar(50), satu untuk input asli dan satu dengan semua data non-numerik bergaris dan digunakan untuk pengindeksan. Jika 2 atau 3 ya, saya pikir saya akan melakukan dua bidang dan semacam pengurai gila untuk menentukan apa itu ekstensi atau data lain dan menanganinya dengan tepat. Tentu saja Anda dapat menghindari kolom ke-2 dengan melakukan sesuatu dengan indeks yang menghapus karakter tambahan saat membuat indeks, tetapi saya hanya akan membuat kolom kedua dan mungkin melakukan pengupasan karakter dengan pemicu.
Pembaruan:untuk mengatasi masalah AJAX, mungkin tidak seburuk yang Anda pikirkan. Jika ini adalah cara utama untuk melakukan sesuatu pada tabel, simpan hanya angka di kolom sekunder seperti yang saya katakan, lalu buat indeks untuk kolom itu menjadi yang terkelompok.