SQL не является таким массивом поддержки, поэтому я не совсем уверен как вы храните свой массив чисел, и это повлияет на лучший способ ответить на этот вопрос.
То есть, я хотел бы сделать это:
SELECT u.id
FROM Users U
RIGHT JOIN Numbers N
ON U.id=N.Number
WHERE N.Number IN (2,3,6)
Это основной запрос; точные данные зависят от того, что вы будете делать, чтобы обнаружить сбой. Любые записи, где u.ID IS NULL указывают, что это не подмножество. Если вы на самом деле не сразу хотите набор идентификаторов вы можете изменить его
SELECT COUNT(*) AS Missing
FROM Users U
RIGHT JOIN Numbers N
ON U.id=N.Number
WHERE N.Number IN (2,3,6)
AND u.id IS NULL
и всякий раз, когда Потерялись был> 0 вы бы знали, что вы не имеете подмножество. (В SQL Server, по крайней мере, вы можете отбросить int до значения 0 = false,! 0 = true, если это удобнее для вашего приложения.)
Другие подробности, которые мы можем добавить с дополнительной информацией о том, что вы на самом деле пытаетесь это сделать, но, надеюсь, это имеет смысл в качестве базовой техники.
(NB все это предполагает, что у вас есть номера/таблицы индикаторную в вашей базе данных. Они невероятно полезны, так, если вы еще не сделали, я бы получить один настроить.)
возможно duplicate [SQL Выбрать все строки, в которых существует подмножество] (http://stackoverflow.com/questions/8425232/sql-select-all-rows-where-subset-exists) – onedaywhen