update <tablename> set MobileNo = replace(MobileNo, '-', '')
You don't mention the name of the table so replace <tablename> with the name of your table (minus the chevrons obviously)
I ALWAYS backup my database before these kind of large update operations. In this simple case instead of a full backup you could add a new column to the table first, call it MobileNo_OLD or something, give it the same datatype as MobileNo and then first do:
Update <tablename> set MobileNo_OLD = MobileNo
Now you can always undo your update if you stuff it up, or someone (they always do) changes their mind.
Another tip is to do:
SELECT top 100 replace(MobileNo, '-', '') as [New MobileNo] from <tablename>
To see what the result of your update will look like before you actually commit to an update statement. (I put the 'top 100' in coz I dunno how massive your table might be in number of records, if you have only few hundred you can take that out) Yes you do you said it has 400 numbers! I'm so slow sometimes!
Last edited by hollystyles : Apr 3rd, 2007 at 7:47 am.