MySQL
 Computer >> コンピューター >  >> プログラミング >> MySQL

MySQLで最後に文字が出現する前にすべてを取得するにはどうすればよいですか?


以下の構文を使用できます。以下は構文です-

update yourTableName
set yourColumnName=REVERSE(SUBSTRING(REVERSE(yourColumnName),
INSTR(REVERSE(yourColumnName), '.')));

まずテーブルを作成しましょう-

mysql> create table DemoTable
-> (
-> Words text
-> );
Query OK, 0 rows affected (0.51 sec)

挿入コマンド-

を使用して、テーブルにいくつかのレコードを挿入します
mysql> insert into DemoTable values('Value1. Value2 .Value3.Value4.Value5');
Query OK, 1 row affected (0.22 sec)

selectステートメントを使用してテーブルのすべてのレコードを表示する-

mysql> select *from DemoTable;

出力

これにより、次の出力が生成されます-

+--------------------------------------+
| Words                                |
+--------------------------------------+
| Value1. Value2 .Value3.Value4.Value5 |
+--------------------------------------+
1 row in set (0.00 sec)

これは、MySQLで最後に文字が出現する前にすべてを取得するためのクエリです-

mysql> update DemoTable
   -> set Words=REVERSE(SUBSTRING(REVERSE(Words), INSTR(REVERSE(Words),'.')));
Query OK, 1 row affected (0.13 sec)
Rows matched: 1 Changed: 1 Warnings: 0

テーブルレコードをもう一度確認しましょう-

mysql> select *from DemoTable;

出力

これにより、次の出力が生成されます-

+--------------------------------+
| Words                          |
+--------------------------------+
| Value1. Value2 .Value3.Value4. |
+--------------------------------+
1 row in set (0.00 sec)

  1. MySQLでテーブルの最初と最後のレコードを取得するにはどうすればよいですか?

    最初と最後のレコードを取得するには、UNIONを使用します。 LIMITは、必要なレコード数を取得するためにも使用されます。 まずテーブルを作成しましょう- mysql> create table DemoTable694 (    EmployeeId int NOT NULL AUTO_INCREMENT PRIMARY KEY,    EmployeeName varchar(100),    EmployeeSalary int ); Query OK, 0 rows affected (0.58 sec) 挿入コマ

  2. MySQLで最後に出現した区切り文字に基づいて、文字列の左側を取得しますか?

    これには、LEFT()メソッドを使用します。操作には、LOCATE()メソッドとREVERSE()メソッドを使用しました。 まずテーブルを作成しましょう- mysql> create table DemoTable (    Title text ); Query OK, 0 rows affected (0.52 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable values('$/This$is[MySQL]$/MySQL[FirstClass]$MySQL[S