MySQL SUBSTRING_INDEX()関数を使用して、名前文字列を2つの部分に分割するにはどうすればよいですか?
わかりやすくするために、「customerdetail」という名前のテーブルから次のデータを使用しています。
mysql> Select * from Customerdetail; +----------------------+----------------------+-----------+---------------------+ | Name | FName | Address | Emailid | +----------------------+----------------------+-----------+---------------------+ | Advik Jhamb | Lovkesh Jhamb | Mumbai | [email protected] | | Chirag Jai Patil | Raman Jai Patil | Gujrat | [email protected] | | Devansh Singh Rajput | Kishore Singh Rajput | Rajasthan | [email protected] | | Mitul Kumar Sharma | Om Veer Sharma | Patiala | [email protected] | +----------------------+----------------------+-----------+---------------------+ 4 rows in set (0.00 sec)
ここで、名前を「First_name」と「Last_name」の2つの部分に分割する場合は、次のクエリを使用して実行できると仮定します-
mysql> SELECT SUBSTRING_INDEX(SUBSTRING_INDEX(Name, ' ', 1), ' ', -1) AS First_Name, TRIM( SUBSTR(Name, LOCATE(' ', Name)) ) AS Last_Name FROM Customerdetail; +------------+--------------+ | First_Name | Last_Name | +------------+--------------+ | Advik | Jhamb | | Chirag | Jai Patil | | Devansh | Singh Rajput | | Mitul | Kumar Sharma | +------------+--------------+ 4 rows in set (0.00 sec)
上記のクエリの結果セットから、名前が2つの部分に分割されていることが明らかです。ミドルネームは名前の一部と見なされます。
-
SUBSTRING_INDEXを使用してMySQLで文字列を分割する方法は?
まずテーブルを作成しましょう- mysql> create table DemoTable1465 -> ( -> Name varchar(40) -> ); Query OK, 0 rows affected (0.54 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable1465 values('Chris Brown'); Query OK, 1 row affected (0.1
-
MySQLを使用して文字列の一部(@の後のドメイン名)を置き換える方法は?
最初にテーブルを作成しましょう- mysql> create table DemoTable -> ( -> EmailId varchar(30) -> ); Query OK, 0 rows affected (0.53 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable values('[email protected]'); Query OK, 1 row affected