- 締切済み
検索条件について
サーバ上にある以下のようにLOAD DATAでデータベースに登録し LOAD DATA INFILE "/home/abc/test001.csv" INTO TABLE test FIELDS TERMINATED BY ','; ENCLOSED BY '"'; 登録することはできたのですが個々テーブル毎では検索できますが 複数のテーブルで検索するとうまく検索できません。 【個々のテーブルは問題なし】 select * from abc where xyz=12345; select * from 123 where xyz=12345; これですと問題なく検索がヒットします。 【複数のテーブルで検索するとうまくいかない】 select * from abc,123 where abc.xyz=123.xyz; これですと検索してもヒットしません。 ちなみにabcのxyzにある項目を「'」で括ると検索できませんでした。 データは"1","12345"でセットしています。 LOAD DATAのやり方が悪いのでしょうか? どなたか教えていただけませんでしょうか。
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- hrm_mmm
- ベストアンサー率63% (292/459)
回答No.1
個々のtableで表示出来るならデータは読み込めているので、load時の問題ではない。 でも、テーブル名が数字のみってあんまりよくないと思う。where条件の中では普通の数値integerと区別出来なくなっているんでは?table名をきちんと``で括るべき select * from abc,`123` where abc.xyz=`123`.xyz;
補足
すみません。 テーブル名はあくまでも例でそのように してしまいました。 実際のテーブルは数字ではありません。 紛らわしい記載のしかたで申し訳ございません。