Java 加载数据填充后不在查询中执行
我已成功使用加载数据填充插入数据。之后,当我使用查询时:Java 加载数据填充后不在查询中执行,java,mysql,sql,Java,Mysql,Sql,我已成功使用加载数据填充插入数据。之后,当我使用查询时: SELECT * FROM tempupload WHERE columnName NOT IN (SELECT columnName FROM othertable) 没有给我理想的结果。但当我将columnName数据类型转换为double(然后再转换为varchar)时,会得到理想的结果 请指导我,因为我必须使用来自JavaEE应用程序的这些查询 如果您的othertable中有任何空值,您可能会遇到不在中的问
SELECT * FROM tempupload
WHERE columnName NOT IN (SELECT columnName FROM othertable)
没有给我理想的结果。但当我将columnName数据类型转换为double(然后再转换为varchar)时,会得到理想的结果
请指导我,因为我必须使用来自JavaEE应用程序的这些查询 如果您的othertable中有任何空值,您可能会遇到不在中的
问题(请参阅)。要改进您的查询,您可以尝试:
SELECT * FROM tempupload
WHERE EXISTS (SELECT 1
FROM othertable
WHERE othertable.columnName = tempupload.columnName)
表的数据类型是什么?查询不在的列的varchar(40)被执行使用LEFT JOIN。。。如果为NULL,则几乎肯定会更快,而不是()中的。联接中使用的两个字段的数据类型是什么?这两个字段中存储了哪些数据?事实上,您可以转换为DOUBLE并返回到VARCHAR,这表明您使用了错误的数据类型。我必须将13位数字保存在列中,可能会更晚,它可能包含字母表,因此我使用VARCHAR