Вопрос отвечает текущей модели данных, но это большая работа, сложность и полная трата времени.
Однако, с разумной моделью данных, это очень простой вопрос, поэтому я отвечу на него такой моделью.
Мы удалите поле UsersList
из вашей таблицы поддержки клиентов. Его никогда не должно быть никогда.. Нет, действительно, никогда.
Теперь, если предположить, что, как показывает пример ваших данных, каждый пользователь может иметь один CSID, мы добавить поле CSid
к пользовательскому таблице. Это называется внешним ключом . Поскольку, как вы говорите, не все пользователи привязаны к таблице CS, вы убедитесь, что поле допускает значения NULL
.
Теперь мы заполняем данные:
стол пользователя
UserId Username CSid
1 User1 1
2 User2 2
3 User3 1
4 User4 NULL
17 User17 3
18 User18 3
20 User20 3
И теперь, чтобы ответить на ваш вопрос:
SELECT * FROM UserTable WHERE CSid IS NULL;
Ваш вопрос является очень хорошим примером почему стоит подумать о своей модели данных, прежде чем испортить ее. Ваш запрос extreme простой, если ваша модель данных имеет смысл.
Почему вы храните несколько значений в одном столбце? – jpw
Я бы предложил начать с нормализации базы данных и избавления от значений, разделенных запятыми, в любом поле. Тогда ваш вопрос будет очень легко ответить. – oerkelens
@ jpw: Спасибо за ответ. Это старший db .. У этого уже есть миллионы записей в этой таблице. Поэтому я не могу изменить структуры таблиц сейчас. :( –