我有一个简单的表,有大约200k个唯一的id。现在我想对照表检查一个id列表(3k-10k),并从列表中获取不在数据库中的thoose IDs(非常少)。
我可以用:

SELECT ids FROM table WHERE ids IN(id1,id2,id3...list_of_IDs_end)

但这会给我数据库中列表中的id。
我可以做额外的编程,但是否有一个sql唯一的解决方案?

最佳答案

你试过了吗:

SELECT ids FROM your_table WHERE ids NOT IN(id1,id2,id3...list of IDs end)

如果可以,可以将列表放在临时表中并使用:
SELECT t1.ids
FROM your_table t1 LEFT JOIN temp_table t2
    ON t1.ids = t2.ids
WHERE t2.ids IS NULL

关于mysql - 从列表中获取不在数据库中的那些ID,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10571923/

10-16 12:30