Re[9]: Неуверенные в своей востребованности на рынке труда,
От: Sinclair Россия https://github.com/evilguest/
Дата: 14.12.24 13:35
Оценка:
Здравствуйте, Философ, Вы писали:
N>>Я SQL не использую, но всё равно интересно. Что, прямо таки можно написать запрос на SQL и на C# и второй вариант будет ощутимо быстрее?
Ф>Для случая такого упоротого говна как SQLite это теоретически возможно. Для остальных СУБД — сомнительно.
Мне кажется, вы ответили на какой-то другой вопрос.
Основная разница между linq (который подразумевался под "написанием запросов на С#") и обычным порошком — в объёме кода.
В какой-то момент объём кода на "обычном порошке" становится настолько велик, что на него забивают, и упрощают себе задачу.
Например, ленятся сделать проекцию там, где нужна проекция — и тащат в память лишние данные.
Или, например, ленятся добавить доп.условие фильтра и фильтруют уже в памяти.
Или, например, ленятся сделать разные тексты запроса для разных комбинаций параметров, и СУБД приходится выбирать неудачный план запроса.

Linq позволяет все эти штуки делать лёгким движением руки, без многостраничного бойлерплейта. Это и приводит к тому, что приложение на его основе порождает более удачные запросы.

А что там внутри СУБД — это дело СУБД. Если СУБД — хорошая (а не SQLite), то она может воспользоваться более качественно подготовленным запросом.
Уйдемте отсюда, Румата! У вас слишком богатые погреба.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.