次の問題があります。
私のテーブル、たとえばtab1には、「LastName、FirstName」という名前の列があります。列が「FirstNameLastName」になるようにしたい。
これをどのように行うかについてのアイデアはありますか?カンマは存在しないことに注意してください。ただし、実際に姓名を反転する方法を理解すれば、カンマは簡単に削除できると思います。
どんな助けでもいただければ幸いです。
ありがとう。
substring
しsubstring_index
てコンマを検索し、それらを分割します。マニュアルを参照してください。@NAME を実際の値に置き換えます。
SELECT TRIM(SUBSTR(@NAME, LOCATE(",", @NAME) + 1)) AS prename, TRIM(SUBSTR(@NAME, 1, LOCATE(",", @NAME) - 1)) AS surename
これにより、プレネームとシュアネームの部分が抽出され、必要に応じてデータを挿入/変更できるようになりました。
あなたの質問への回答ではありませんが、私はいかなる状況下でもこれを行いません. 姓と名を確実に区別する機会が失われます。次の名前を検討してください。
Bridget St John
Boutros Boutros Ghali
Karl-Theodor Maria Nikolaus Freiherr von und zu Guttenberg
「姓」と「名」の列を分けておくことをお勧めします。出力を行うときに、必要に応じてそれらを連結できます。