Back to questions
Senior
5
Какими базами данных ты работал? Через ORM или нативными запросами? Какие нативные запросы писал и на каком уровне?
Companies where asked
wilix
Answer from AI
sobes.tech AI
Работал с разными базами данных: PostgreSQL, MySQL, MongoDB, Redis. В основном использовал ORM (например, GORM для Go) для ускорения разработки и удобства, но для сложных запросов и оптимизации писал нативные SQL-запросы.
Примеры нативных запросов:
- Сложные JOIN с агрегациями и подзапросами
- Использование оконных функций
- Оптимизированные запросы с использованием индексов и фильтров
Уровень — уверенное владение SQL, включая написание сложных запросов, оптимизацию и понимание планов выполнения. В Go использовал пакет database/sql и sqlx для удобства работы с нативными запросами.
Пример нативного запроса в Go с использованием database/sql:
query := `SELECT id, name FROM users WHERE age > $1 ORDER BY created_at DESC LIMIT 10`
rows, err := db.Query(query, 30)
if err != nil {
log.Fatal(err)
}
// обработка rows
Использование ORM позволяет быстро стартовать, но для критичных по производительности участков всегда предпочитаю нативные запросы.