ビットフィールドでGROUP_CONCAT()を使用すると、MySQLでガベージが返されますか?直し方?
修正するには、group_concat()を使用し、列に0を追加します。まずテーブルを作成しましょう-
mysql> create table DemoTable1856 ( Id int, Value bit(1) ); Query OK, 0 rows affected (0.00 sec)
挿入コマンド-
を使用して、テーブルにいくつかのレコードを挿入しますmysql> insert into DemoTable1856 values(101,1); Query OK, 1 row affected (0.00 sec) mysql> insert into DemoTable1856 values(102,0); Query OK, 1 row affected (0.00 sec) mysql> insert into DemoTable1856 values(101,0); Query OK, 1 row affected (0.00 sec) mysql> insert into DemoTable1856 values(102,1); Query OK, 1 row affected (0.00 sec) mysql> insert into DemoTable1856 values(101,0); Query OK, 1 row affected (0.00 sec)
selectステートメントを使用してテーブルのすべてのレコードを表示する-
mysql> select * from DemoTable1856;
これにより、次の出力が生成されます-
+------+-------+ | Id | Value | +------+-------+ | 101 | | | 102 | | | 101 | | | 102 | | | 101 | | +------+-------+ 5 rows in set (0.00 sec)
これは、ビットフィールドでgroup_concat()を使用し、ガベージ値を返さないようにするためのクエリです-
mysql> select group_concat(Value+0) from DemoTable1856 group by Id;
これにより、次の出力が生成されます-
+-----------------------+ | group_concat(Value+0) | +-----------------------+ | 1,0,0 | | 0,1 | +-----------------------+ 2 rows in set (0.00 sec)
-
MySQLのCONCATでGROUP_CONCATを使用するにはどうすればよいですか?
まず、テーブルを作成しましょう。 mysql> create table GroupConcatenateDemo -> ( -> id int, -> FirstName varchar(100), -> Score int -> ); Query OK, 0 rows affected (0.61 sec) レコードの挿入 ここで、いくつかのレコードを挿入しましょう。 mysql> insert into GroupConcatenateDemo values(1,'John',94); Query OK, 1 row affec
-
MySQL Workbenchを使用してMySQLデータベースのバックアップを取る方法は?
MySQLを使用してMySQLデータベースのバックアップを作成するには、最初にMySQLWorkbenchをインストールする必要があります。以下のリンクをたどって、MySQLワークベンチをインストールします。 https://dev.mysql.com/downloads/windows/installer/8.0.html インストールに成功したら、MySQLWorkbenchを開く必要があります。 「データのエクスポート」オプションを選択します。これがスナップショットです。 エクスポートするデータベースを選択します。ここで、データベースを保存するパスを設定することもできます。