2016-05-10 28 views
0

MYSQLにCSVをインポートしました。それはすべて正常に働いて、私はPHPMYADMINとコンソールを介してレコードを正常に見ることができます。しかし、私が知っているレコードを検索すると、見つけられません。MYSQLレコードが見つかりません

SELECT * from `companies` where `name` = 'test'; <--- I corrected this because all the answers are talking about the query. The problem isnt with the query. Please read my update following. 

しかし、私は手動でその列を編集して保存すると、同じクエリが、それは罰金見つけた -

クエリは基本的です。

私はTRIM列にしようとしましたが、違いはありません。

助けてください。前もって感謝します。

更新:問題はクエリではありません。手動でレコードを編集して保存すると、クエリは正常に機能します。だから私はそれがレコード自体または照合の問題の戻り値または非ASCII文字と関係していると思います。

+1

折り返しテストのためにバッククォートを削除して再試行してください。 –

+0

SELECT * from names = 'test'; –

+1

バッククォートは、エスケープする列またはテーブル名のためだけです! – Jens

答えて

0

あなたのname列に「test」という単語がありますので余分なスペースは結果に影響しませんが、これは「testing」、「this is test」などの単語にも一致します。 'test'のような特定の単語と一致する場合、これは使用できませんが、このクエリで結果を確認できます。この問合せを使用して結果を得ると、列の値に余分なスペースがあることを意味します。

SELECT * from companies where name LIKE %test%; 
+0

コードについての説明は、あなたの答えを大幅に改善します。 –

+0

はい、あなたは正しいです。ワイルドカードを使用すると、余分なスペースがあることを確認できます。どのようにスペースをTRIMに?私は 'UPDATEの会社を試しましたSET name = TRIM(name); ' – Den

+0

あなたの更新クエリが正しく動作するはずです。他に何か問題があるはずです。 – DD77

0

単一引用符で値テスト

SELECT * from companies where name = "test"; 
関連する問題