По-моему, вы очень сложно моделируете данные.
Было бы проще создать таблицу KEYWORD с ForeignKey из SVA1ARTICLE и ссылочным ограничением на то, что на один и тот же SVA1ARTICLE нельзя ссылаться более 4 раз из таблицы KEYWORD.
Если вы сделаете это, ваша логика запросов станет на намного проще, скорость запроса будет увеличена (создайте индекс для KEYWORD как для сохраненного слова, так и для ссылки на SVA1ARTICLE), и вы не будете складывать множество подзапросов, чтобы получить ваш результат, который будет очень трудно настроить позже, когда спецификация изменится на обработку, скажем, 3 или 5 ключевых слов (или без ограничений, что невозможно в вашей существующей модели).
С новой моделью, как будут решаться ваши проблемы:
С отдельной таблицей KEYWORD вы можете просто получить простой запрос, в котором вхождения слова превышают любой порог (в данном случае 100).
Из приведенного выше результата # 1 вы можете просто извлечь простой запрос для всех статей, содержащих> 100 слов.
Вы можете сделать это как один запрос (# 2) с подзапросом (# 1) или в приложении, как построение начального списка данных из # 1, а затем сделать второй запрос # 2.
Пока вы не скорректируете модель данных, подробный ответ на этот вопрос с помощью кода не очень практичен.