_CORE
AI & Agentic Systems Core Information Systems Cloud & Platform Engineering Data Platform & Integration Security & Compliance QA, Testing & Observability IoT, Automation & Robotics Mobile & Digital Banking & Finance Insurance Public Administration Defense & Security Healthcare Energy & Utilities Telco & Media Manufacturing Logistics & E-commerce Retail & Loyalty
References Technologies Blog Know-how Tools
About Collaboration Careers
CS EN
Let's talk

ORM vs Raw SQL

01. 05. 2025 1 min read intermediate

ORM (SQLAlchemy, Prisma, Entity Framework) simplifies DB work. But it hides complexity and generates suboptimal queries.

ORM Advantages

  • Fast development, less code
  • Type safety
  • Automatic migrations
  • Protection against SQL injection
  • Database-agnostic

Raw SQL Advantages

  • Full control over queries
  • Optimal performance for complex queries
  • Window functions, CTE, recursive queries
  • Less abstraction = fewer surprises

Hybrid Approach

SQLAlchemy — ORM for CRUD

user = session.query(User).filter(User.id == 1).first()

Raw SQL for complex queries

result = session.execute(text(‘’’ WITH monthly AS ( SELECT DATE_TRUNC(‘month’, created_at) as month, COUNT(*) as cnt FROM orders WHERE user_id = :uid GROUP BY 1 ) SELECT month, cnt, AVG(cnt) OVER() as avg_orders FROM monthly ‘’‘), {‘uid’: user_id})

Key Takeaway

ORM for CRUD, raw SQL for analytics and optimization. Hybrid approach is pragmatic.

databaseormsqlbest practices
Share:

CORE SYSTEMS tým

Stavíme core systémy a AI agenty, které drží provoz. 15 let zkušeností s enterprise IT.