Основываясь на моем первоначальном понимании этого вопроса, я предложил, чтобы просто добавить ключевое слово NOT
SELECT * FROM tableA WHERE item NOT IN (... items ...)
Но за комментарием выше, не будет возвращать то, что вы хотите. Исходный вопрос был изменен, чтобы включить эту новую информацию.
Итак, вам нужно получить данные из предложения WHERE в форму, которая запрашивается. Вот один из способов сделать это, когда я создаю дополнительную таблицу с именем «items» и имеют инструкции INSERT для размещения каждого элемента в этой таблице элементов. Поскольку у меня нет доступа к вашим данным, я собираюсь использовать целые числа для элементов и настроить их с меньшим объемом данных.
--Set up some sample data
CREATE TABLE tableA(item INT PRIMARY KEY)
INSERT INTO tableA SELECT 1
INSERT INTO tableA SELECT 2
INSERT INTO tableA SELECT 3
INSERT INTO tableA SELECT 4
INSERT INTO tableA SELECT 9
INSERT INTO tableA SELECT 10
SELECT * FROM tableA WHERE item IN (0,1,2,3,4,5,6)
SELECT * FROM tableA WHERE item NOT IN (0,1,2,3,4,5,6)
-- Create a table and insert all the 860 items from your where clause
CREATE TABLE items(item INT)
INSERT INTO items SELECT 0
INSERT INTO items SELECT 1
INSERT INTO items SELECT 2
INSERT INTO items SELECT 3
INSERT INTO items SELECT 4
INSERT INTO items SELECT 5
INSERT INTO items SELECT 6
-- Want to find a query that returns all of the items in the newly created items table
-- that are not in the original tableA (in this example, the values returned are 0,5,6)
SELECT * FROM items WHERE item NOT IN (SELECT item FROM tableA)
, какую базу данных вы используете? MySQL? Postgres? оракул? – Bohemian
@Bohemian Oracle 10g – Mike