Skip to main content

· 9 min read
James Moore

SQL window functions allow you to perform calculations on a set of rows that are related to the current row, without the need for self-joins or subqueries. They are used to perform a calculation across a set of table rows that are somehow related to the current row, in a way similar to aggregate functions.

Want to learn more? Check out this video

· 7 min read
James Moore

SQLite doesn't have as many features as the other popular databases, but don't let that scare you away from using SQLite, because even though there aren't as many built-in features, there are excellent ways of extending SQLite to add any missing features you might need.

Want to learn more about extending SQLite? Check out this video.

· 9 min read
James Moore

SQLite doesn't automatically free up disk space as it becomes available. In other words, if your database is 1 GB in size and you delete some or all of the data, in the database, the final size of the database will still be 1 GB.

So how do you free up unused space in SQLite?

You need to vacuum your database.

So, how do you vacuum your database?

Watch this video to learn more.

· 9 min read
James Moore

Datatypes in SQLite are handled differently than pretty much every other popular relational database.

How is it different?

Well, SQLite uses a flexible, dynamic type system, whereas the other popular relational databases use a strict, static type system.

What does this mean to developers?

Watch this video to learn more.

· 17 min read
James Moore

SQLite is really easy to start using, you just need to add the library to your project and start issuing SQL statements.

Now, because it's so easy to start using SQLite, it might feel like it's configuration free, but that's not exactly true.

There are a few key configurations you should be familiar with, and in this video we'll look at one of the most important configuration options, the journal_mode option.

· 9 min read
James Moore

If you use a client/server based database (Postgres, MySQL etc) with tools like Object-Relational Mapper (ORM) or GraphQL, then your system is likely susceptible to the N+1 problem.

But did you know that not all databases are susceptible to the N+1 problem?

For example, SQLite doesn't experience the N+1 problem.