Если у меня есть эта таблица:
+------+-------+---------------+--------+-----------------+------------+-----------+----------------+------+------+--------+------------+------------+
| type | class | username | userid | userip | usermobile | useremail | daysleft| pin1 | pin2 | pin3 | active | schoolname | schoolsite |
+------+-------+---------------+--------+-----------------+------------+-----------+----------------+------+------+--------+------------+------------+
| B | A | sebbetest | 1000 | 123.123.123.123 | none | none | 50| 0 | 0 | 0 | Y | none | none |
| A | A | stackowerflow | 5355 | 123.123.123.123 | none | none | 50| 0 | 0 | 0 | Y | none | haha |
| C | A | good | 4223 | 123.123.123.124 | none | none | 50| 0 | 0 | 0 | Y | none | haha |
| A | A | tester | 6353 | 123.123.123.125 | none | none | 50| 0 | 0 | 0 | Y | none | haha |
| B | A | admin | 3453 | 123.123.123.125 | none | none | 50| 0 | 0 | 0 | Y | none | eeee |
| A | A | sebastian | 1342 | 123.123.123.126 | none | none | 50| 0 | 0 | 0 | Y | none | eeee |
| C | A | username | 6456 | 123.123.123.125 | none | none | 50| 0 | 0 | 0 | Y | none | woooooow |
+------+-------+---------------+--------+-----------------+------------+-----------+----------------+------+------+--------+------------+------------+
Как видите, у пользователя "хорошо" с IP "123.123.123.124" И у пользователя "sebastian" с IP "123.123.123.126" нет "спутников", нет других пользователей с тем же IP.
У пользователя "sebbetest" есть компаньон "stackowerflow".
У пользователя "tester" есть 2 спутника: "admin" и "username".
Теперь я хочу удалить этих пользователей, у которых нет компаньонов. Как я сделаю? По атомарным причинам и для предотвращения одновременного доступа к базе данных, я хотел бы удалить всех «не сопутствующих» пользователей в одном выражении SQL.
Я пробовал с:
УДАЛИТЬ ИЗ ЛАН, ГДЕ СЧЕТ (userip) = 1;
получил это:
ОШИБКА 1111 (HY000): неверное использование групповой функции
Строки не являются дубликатами.
Если необходимо проверить, является ли запись уникальной независимо от IP, (тип, идентификатор пользователя) уникальны.
Другими словами, если IP является уникальным в строке, удалите его.