• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:mysqlimportについて)

MySQLインポートでの検索結果について

このQ&Aのポイント
  • MySQLインポートにおいて、一部の検索結果が正常に返されない現象が発生しています。具体的には「G」「R」での検索ができず、「GR」での検索結果のみが返されます。この現象はmysqlimportのshellコマンドでのインポート時に発生し、半角英数のフィールドに関連しています。また、この現象はphpMyAdminのテキストファイルの追加やNavicat MySQLでのインポートでは発生しないことが確認されています。
  • 原因として考えられるのは、mysqlimportのshellコマンドが特定の文字列を誤って処理していることです。具体的には「G」「R」が特殊な意味を持っている可能性があります。また、phpMyAdminやNavicat MySQLでは、異なるインポート処理を行っているためにこの現象が起こらない可能性も考えられます。
  • この問題の解決策としては、mysqlimportの代替コマンドを使用することが考えられます。また、フィールド名やインポートデータの形式を変更することで正常な検索結果が得られる可能性もあります。ただし、原因を明確に特定するためには詳細な情報が必要ですので、問題が再現する環境やデータの内容などを確認する必要があります。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

select * from テーブル where フィールド='G' (または'R')ではダメということでしょうか? select * from テーブル where フィールド='G ' (または'R ') (GもしくはRの後ろに空白1文字を入れる) ならどうでしょうか? また、フィールドの型をchar(2)ではなく、varche(2)に変えてみたら上手くいきませんか? char(n)は固定長で、文字データの後ろに空白が詰められる仕様……だったような気がします。

takotan2
質問者

お礼

nyaa519323116様 お礼が遅くなり本当に申し訳ございませんでした。 結果として<フィールド名 char(2)> gr が最後のフィールドでその後に改行が入ってしまっていたようです。 検索条件として、 ・「G」が含まれるもの・・・この場合「G」または「GR」 ・「R」が含まれるもの・・・この場合「R」または「GR」 `DomesticCity`.`gr` like "%G%" で検索出来ました。 お恥ずかしいのですが、難しく考えすぎていたようです。 ありがとうございました。