Сгруппируйте результаты по Email
, затем возьмите первую или последнюю соответствующую запись:
SELECT Email
, MIN(AccountName) AS Account
FROM table
GROUP BY Email;
UPDATE :
Обратите внимание, что вы можете добавить уникальное ограничение в столбец электронной почты, чтобы SQLite выдавал ошибку, если вы попытаетесь вставить то же значение во второй раз:
CREATE TABLE Users
( id INTEGER PRIMARY KEY
, email TEXT NOT NULL UNIQUE COLLATE NOCASE
, accountname TEXT NOT NULL COLLATE NOCASE
);
Предложение UNIQUE в столбце email
указывает, что никакие две строки не могут содержать одно и то же значение.
Предложение COLLATE NOCASE заставляет SQLite сравнивать значения в этой строке без учета регистра (так что EMAIL и eMail будут считаться равными).