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

フィールドから最後の単語を抽出するMySQLクエリ?


フィールドから最後の単語を抽出するには、組み込みのSUBSTRING_INDEX()関数を使用します。構文は次のとおりです-

SELECT SUBSTRING_INDEX(yourColumnName,’ ‘,-1) as anyVariableName from yourTableName;

上記の概念を理解するために、テーブルを作成しましょう。以下は、テーブルを作成するためのクエリです-

mysql> create table FirstWordDemo
   −> (
   −> AllWords longtext
   −> );
Query OK, 0 rows affected (0.83 sec)

次に、insertコマンドを使用してテーブルにいくつかの単語を挿入します。クエリは次のとおりです-

mysql> insert into FirstWordDemo values('This is the first MySQL Query');
Query OK, 1 row affected (0.11 sec)

mysql> insert into FirstWordDemo values('MySQL is a Relational Database');
Query OK, 1 row affected (0.17 sec)

mysql> insert into FirstWordDemo values('FirstWord is not correct');
Query OK, 1 row affected (0.21 sec)

ここで、selectステートメントを使用してテーブルのすべてのレコードを表示します。クエリは次のとおりです-

mysql> select *from FirstWordDemo;

以下は出力です-

+--------------------------------+
| AllWords                       |
+--------------------------------+
| This is the first MySQL Query  |
| MySQL is a Relational Database |
| FirstWord is not correct       |
+--------------------------------+
3 rows in set (0.00 sec)
>

これは、フィールドの最後の単語を表示するためのクエリです。最初に同じ構文について説明しました。以下はクエリです-

mysql> select SUBSTRING_INDEX(AllWords, ' ', -1) as MyFirstWordResult from FirstWordDemo;

以下は出力です-

+-------------------+
| MyFirstWordResult |
+-------------------+
| Query             |
| Database          |
| correct           |
+-------------------+
3 rows in set (0.00 sec)

  1. MySQLから最後の10行を選択するにはどうすればよいですか?

    MySQLから最後の10行を選択するには、SELECTステートメントとLimitの概念でサブクエリを使用できます。以下は例です。 テーブルを作成します。 mysql> create table Last10RecordsDemo -> ( -> id int, -> name varchar(100) -> ); Query OK, 0 rows affected (0.75 sec) テーブルにレコードを挿入します。 mysql> insert into Last10RecordsDemo values(1,John),(

  2. すべての列の値から最後の2つの単語を削除するMySQLクエリ

    このために、MySQLのLEFT()関数を使用できます。まずテーブルを作成しましょう- mysql> create table DemoTable    -> (    -> Name varchar(10)    -> ); Query OK, 0 rows affected (0.71 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable values('John'); Query OK, 1 row