前と後、私は基本的に私はそれがFirstNameとLastNameのMiddleNameになって再配置する必要がある文字列スワップコンマ
AdviserName
-----------
Tearle, Michael Hearn
Hearn Tearle, Michael
Van Der Welden, Luke
Welden, Luke Van Der
Brennan, Sony G
G Brennan, Sony
Rhammasamysundaran, Vishnu Brahma Kuma
Brahma Kuma Rhammasamysundaran, Vishnu
下記の表を持っています。たとえばMichael Hearn TearleやSony G Brennan、Luke Van Der Weldenなどです。
私は以下の構文を使用しましたが、ミドルネームがHearn Tearle、Michaelのようなコンマの前にあると何とかしていません。
If(OBJECT_ID('tempdb..#tempX') Is Not Null)
Drop Table #tempX
create table #tempX (AdviserName varchar(max))
insert into #tempX (AdviserName)
values ('Tearle, Michael Hearn'),('Hearn Tearle, Michael'),('Van Der Welden, Luke'),('Welden, Luke Van Der'),('Brennan, Sony G'),('G Brennan, Sony'),('Rhammasamysundaran, Vishnu Brahma Kuma '), ('Brahma Kuma Rhammasamysundaran, Vishnu ')
--select * from #tempX
select substring(advisername, charindex(',', replace(advisername, ' ', '')) + 1, len(advisername))+' '+ left(advisername, charindex(',', advisername) -1) as AdviserName from #tempX
以下は結果です。
AdviserName
--------------------------------------
Michael Hearn Tearle
, Michael Hearn Tearle
n, Luke Van Der Welden
Luke Van Der Welden
Sony G Brennan
, Sony G Brennan
Vishnu Brahma Kuma Rhammasamysundaran
n, Vishnu Brahma Kuma Rhammasamysundaran
どのようにカンマの前とカンマの後にミドルネームを使用するようにクエリを作成しますか?
私はSQL Server 2012を使用しています。
ありがとうございます。
おかげジャヤサヤを試してみて、私はマイケル・ハーンTearleやルークファンデWeldenのような姓MiddleName LastNameのようにするために必要です。カンマを削除するだけです。 –
@AdhityaSanusi、申し訳ありませんが、マイナーコードを変更しました。今すぐチェック –
はい!それは働いている。素晴らしい!あなたの助けに感謝Jayasurya。心から感謝する。 –