在LOAD DATA INFILE之后执行NOT IN查询

时间:2012-03-31 10:54:26

标签: java mysql sql

我已成功使用LOAD DATA INFILE插入数据。之后当我使用查询时:

SELECT * FROM tempupload 
         WHERE columnName NOT IN (SELECT columnName FROM othertable)

没有给我理想的结果。但是当我将columnName数据类型转换为double(并再次转换为varchar)时,会给我带来理想的结果。

请指导我,因为我必须使用Java EE应用程序中的这些查询。

1 个答案:

答案 0 :(得分:0)

如果您的绅士中有任何NULL,则NOT IN可能会遇到一些问题(请参阅this)。要改进您的查询,您可以尝试:

SELECT * FROM tempupload 
WHERE EXISTS (SELECT 1
    FROM othertable 
    WHERE othertable.columnName = tempupload.columnName)