Да, вы можете использовать запрос SQL для выполнения объединения условий и получения нужного результата. Приведу пример запроса для SQLite, который может помочь вам выполнить описанные вами условия:
SELECT MAX(word) AS result
FROM your_table
WHERE LOWER(word) = word COLLATE NOCASE
GROUP BY LOWER(word)
HAVING COUNT(*) = 1
UNION
SELECT word
FROM your_table
WHERE LOWER(word) != word COLLATE NOCASE
GROUP BY LOWER(word)
Предполагается, что ваша таблица называется your_table, а поле со словами — word. Этот запрос выполняет объединение ваших условий, учитывая различия в регистре. Общий результат включает в себя однократные слова с маленькой буквы и уникальные слова с большой буквы. Вы можете настроить его в соответствии с вашими требованиями.
1) могут остатся лишь слова начинающиеся с маленькой буквы или большой, которые не дублируются
2) в случае дубляжа, при наличии слова с большой буквы остается лишь слово с большой
3) если оба слова с маленькой или большой, так же должно остаться лишь одно
На данный момент в уме строятся какие то полуавтоматические образы, можно ли это проделать за цельный текст?