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

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[SecondClass]');
Query OK, 1 row affected (0.19 sec)
mysql> insert into DemoTable values('$/This$is[Java]$/Java[FirstClass]$Java[SecondClass]');
Query OK, 1 row affected (0.10 sec)

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

mysql> select *from DemoTable;

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

+--------------------------------------------------------+
| Title                                                  |
+--------------------------------------------------------+
| $/This$is[MySQL]$/MySQL[FirstClass]$MySQL[SecondClass] |
| $/This$is[Java]$/Java[FirstClass]$Java[SecondClass]    |
+--------------------------------------------------------+
2 rows in set (0.00 sec)

以下は、文字列の左側の部分を取得するためのクエリです-

mysql> select left(Title, char_length(Title) - locate('$', reverse(Title))) as result from DemoTable;

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

+-------------------------------------+
| result                              |
+-------------------------------------+
| $/This$is[MySQL]$/MySQL[FirstClass] |
| $/This$is[Java]$/Java[FirstClass]   |
+-------------------------------------+
2 rows in set (0.04 sec)

  1. Javaを使用してMySQLデータベースのテーブルから最後のレコードを取得しますか?

    MySQLデータベースからデータを取得するには、JavaのexecuteQuery()メソッドを使用する必要があります。まず、MySQLデータベースにテーブルを作成します。ここでは、「サンプル」データベースに次のテーブルを作成します mysql> create table javaGetDataDemo - > ( - > Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, - > FirstName varchar(10), - > LastName varchar(10) - > ); Query OK, 0 rows

  2. 文字列の左側から5文字をフェッチするMySQLselectステートメント

    文字列の左側から文字数をフェッチするには、MySQLのLEFTメソッドを使用します。まずテーブルを作成しましょう- mysql> create table DemoTable (    Name varchar(100) ); Query OK, 0 rows affected (6.58 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable values('Sam Brown'); Query OK, 1 row affected (0.13 sec) mysq