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

MySQLで異なるスペースが割り当てられている異なる列から類似した名前を返しますか?


これには、LTRIM()とRTRIM()を使用します。これは、名前は似ていますが、左右のスペース割り当てが異なるためです。たとえば、「ジョン」と「ジョン」。

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

mysql> create table DemoTable614 (EnterName varchar(100),ReennterName varchar(100));
Query OK, 0 rows affected (0.97 sec)

挿入コマンド-

を使用して、テーブルにいくつかのレコードを挿入します
mysql> insert into DemoTable614 values(' John ','John');
Query OK, 1 row affected (0.19 sec)
mysql> insert into DemoTable614 values('Carol ','Bob');
Query OK, 1 row affected (0.18 sec)
mysql> insert into DemoTable614 values('David ','David');
Query OK, 1 row affected (0.23 sec)

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

mysql> select *from DemoTable614;

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

+------------+--------------+
| EnterName  | ReennterName |
+------------+--------------+
| John       | John         |
| Carol      | Bob          |
| David      | David        |
+------------+--------------+
3 rows in set (0.00 sec)

以下は、異なるスペースが割り当てられた異なる列から類似した名前を返すためのクエリです-

mysql> select *from DemoTable614 where LTRIM(RTRIM(EnterName)) = LTRIM(RTRIM(ReennterName));

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

+------------+--------------+
| EnterName  | ReennterName |
+------------+--------------+
| John       | John         |
| David      | David        |
+------------+--------------+
2 rows in set (0.00 sec)

  1. MySQLで重複行から1行のみを返す

    重複する行から1つの行のみを返すには、DISTINCTキーワード-を使用します。 mysql> create table DemoTable1998 (    Name varchar(20) ); Query OK, 0 rows affected (0.61 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable1998 values('Robert'); Query OK, 1 row affected (0.17 sec) mysql> insert

  2. MySQLを使用して、さまざまな行から単一のフィールドにリストを返します

    これには、GROUP_CONCAT()を使用します。まずテーブルを作成しましょう- mysql> create table DemoTable2024    -> (    -> SubjectName varchar(20),    -> StudentName varchar(20)    -> ); Query OK, 0 rows affected (0.62 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert in