Omvat dit:
- Internationale nummers?
- Extensies?
- Andere informatie naast het werkelijke aantal (zoals "vraag naar bobby")?
Als dit allemaal nee is, zou ik een veld van 10 tekens gebruiken en alle niet-numerieke gegevens verwijderen. Als de eerste een ja is en de andere twee nee, zou ik twee varchar(50)-velden gebruiken, één voor de originele invoer en één met alle niet-numerieke gegevens gestript en gebruikt voor indexering. Als 2 of 3 ja zijn, denk ik dat ik twee velden en een soort gekke parser zou doen om te bepalen wat extensie of andere gegevens zijn en er op de juiste manier mee om te gaan. Natuurlijk zou je de 2e kolom kunnen vermijden door iets met de index te doen waarbij het de extra tekens verwijdert bij het maken van de index, maar ik zou gewoon een tweede kolom maken en waarschijnlijk de tekens verwijderen met een trigger.
Update:om het AJAX-probleem aan te pakken, is het misschien niet zo erg als je denkt. Als dit realistisch gezien de belangrijkste manier is om iets aan de tabel te doen, sla dan alleen de cijfers op in een secundaire kolom, zoals ik al zei, en maak dan de index voor die kolom de geclusterde.