0

まず、これを再エクスポートできないため、このファイルでスタックします。

以下に掲載されているサンプルでは、​​INT列の値は16進数です。おもう。0X31などの値は1としてインポートする必要があります。代わりに49としてインポートします。これはASCIIと同等である可能性があると思います。0x31を1として、0x32を2としてインポートする必要があります。これを行うにはどうすればよいですか?

これらの値を検索して置き換えるのに十分スマートなテキストエディタでも問題ありません。私は何千もの質問IDを持っているので、これを手動で実行したくありません。たとえば、「0x31」を検索して「1」に置き換えます。

これがインポートサンプルです。

REPLACE INTO 'qa_sharedevents' ('entitytype', 'entityid', 'questionid', 'lastpostid', 'updatetype', 'lastuserid', 'updated') VALUES ('Q', '1', 0x31, '1', '', '1', '2012-03-08 23:45:56'), ('U', '1', 0x31, '1', '', '1', '2012-03-08 23:45:56'), ('Q', '1', 0x31, '3', '', '', '2012-03-09 02:23:54'), ('T', '17', 0x31, '1', '', '1', '2012-03-08 23:45:56'), ('Q', '2', 0x32, '2', '', '1', '2012-03-09 01:28:36'), ('U', '1', 0x32, '2', '', '1', '2012-03-09 01:28:36'), ('Q', '2', 0x32, '2', 'E', '1', '2012-03-09 01:30:27'), ('U', '1', 0x32, '2', 'E', '1', '2012-03-09 01:30:27'),

4

2 に答える 2

2

関数を試してくださいCHAR()

mysql> select char(0x31), char(0x35);
+------------+------------+
| char(0x31) | char(0x35) |
+------------+------------+
| 1          | 5          |
+------------+------------+
1 row in set (0.00 sec)
于 2012-08-08T16:29:25.117 に答える
0

MySQLのsubtring関数を使用できます。mysqlクライアントでこれを試して、どのように機能するかを確認してください。

substring( '0x31'、-1,1);を選択します。

于 2012-08-08T16:30:22.870 に答える