|
|
Question : Splitting contact names into component Title/Forename/Surname
|
|
Hi, just being lazy here!
Has anyone done a SQL stored procedure that will take a person's name and split it into its component parts?
E.G.
Mr Frederick A Bloggs
Would split this into:
Title: Mr Forename: Frederick Initials: F A Surname: Bloggs
Ideally be intelligent enough to also spot that Mr Bloggs should only populate the Title and Surname.
I have done something similar that uses the charindex and patindex functions, I just didn't want to have to reinvent the wheel if someone else has already done it!
Thanks.
|
Answer : Splitting contact names into component Title/Forename/Surname
|
|
before we go deep into this are using SQL 2000 or SQL 2005? if 2005... just do it using:
1. SSIS : if you can 2. CLR : Develop a function using VB or C# they are FAR better in performance and eas of use...
3. If you are stuck with 2k :-) the way I would approach is :
Create 3 user defined functions
fnMr fnFirstname fnLastname
You Do something like this in the query :
SELECT fnMr (Contact_Name), fnFirstName (Contact_Name), fnLastName (ContactName) FROM MyTable
fnMR : Code that would check for ... you guessed it....etc
You can also create one function (for code managability, passing a parameter that identifies what you're looking for
fnSplitname (Contact_Name, 'Mr')
Hope this helps... if you need more help on each function let me know
|
|
|
|
|