Давай, покажи МОЩЬ ORM, и СЛОЖНУЮ АБИЕКТНАЮ ЛОГИКУ, и не забудь поделиться высером EF. На таких задачках(очень простых, на самом деле, и частых на практике. А и да, СУБД PostgreSQL 9.4+ или MSSQL 2008R2+):
1. Есть %%два стула%% две таблички, account(user_id int, amount decimal(19,4)) и transactions(user_id int, amount decimal(19,4), timestamp long)
Соответственно, нужно атомарно снять с аккаунта бабло, и записать в историю транзакций. И, ессно, не обосраться, случайно уйдя в нули(выдав нежданный кредит юзеру лол) или похерив консистентность данных.
2. Есть табличка foo(id int, value1 varchar(255), value2 varchar(255))
Нужно вывести сет с тремя колонками - (id int, value1 varchar(255), value2 varchar(255), is_duplicate bool)
Причем таким образом, что id, value1 и value2 берутся из основной таблички, а is_duplicate - true в тех записях, для которых уже существовало либо такое же value1 + value2, либо такое же value2 + value1.
3. В БД есть таблица place(id int, lat decimal(19,4), lon decimal(19,4), description text)
Также, есть таблица feature(id int, place_id int, description text, price decimal(19,4))
Place - места на карте, feature - характеристики этих мест.
В определенной области карты физически может находится несколько десятков тысяч мест(А может хуй целых ноль десятых) Но на UI надо показывать максимум 300, причем равномерно разбросанными по карте. Причем, как это обычно бывает, кроме области карты, на UI есть и другие фильтры. Допустим у нас 2 - по тексту(призвольные обрывки текста, нужно из говна и палок угадывать что имел ввиду пользователь прям как яндекс-геокодер) - это поля description, и по цене(средний price фич места). А, и по цене(средней) еще и сортировка - снизу вверх, или наоборот. А на UI надо выводить места, да, и все их feature.