Нужно получить строки с lang='EN', только если не нашлась строка с lang='RU'
Есть такое решение
SELECT *
FROM table
WHERE lang IN ('EN', 'RU')
AND (lang='RU' OR NOT EXISTS(SELECT lang FROM table WHERE lang='RU'))
Но по-моему такой запрос просто обязан тормозить.
Борюсь с собой или прокостылять так всего в одном месте или дозаполнить ~20 таблиц недостающими значениями для всех языков.