Где вы храните запросы к базе в коде или используйте хранимые процедуры?
есть 2 основных подхода: максимум логики в бд и максимум логики в приложении.
первый был актуален в давние времена, когда компьютеры были медленными.
сейчас, когда железо дешевеет, а труд специалистов дорожает, превалирует второй подход. у которого с одной стороны есть недостаток в виде возможной просадки по скорости, но с другой стороны нет необходимости держать в штате специально обученных людей, и весь контроль над базой (включая ее структуру) остается на стороне приложения, а не субд.
золотого решения нет. каждый выбирает то, что ему больше подходит.Все хорошо работает, пока бизнес не меняет логику, меняться запрос и получается много переделывать.а переписывать и тестировать процедуры в субд проще? тем более, скорее всего, с изменением процедуры придется переписывать код все равно.
Просто для информации, хранимые проценуры не используются вообще нигде, кроме, наверное, хардкорного энтерпрайза. 
Тем более непонятно, как процедуры решают проблему переделывания кода.
Если отвечтаь на вопрос буквально, то
1. Для большинства простых операций с БД запросы вообще не пишутся, пишутся обращения к ORM. Например в вместо $stmt = $pdo->prepare("SELECT * FROM users WHERE id=?");
$stmt->execute([$id]);
$user = $stmt->fetch();
Пишется $user = $em->getRepository(User::class)->find($id);
2. Сложные запросы с фильтрами лежат в специальных классах, которые называются репозиториями.