Understanding WITHOUT ROWID Tables in SQLite

One feature that sets SQLite apart from most other RDBMSs is the concept of WITHOUT ROWID tables. This is an optimization feature designed to improve performance and reduce storage space for certain use cases.

This article explores what WITHOUT ROWID tables are, how they work, their benefits, and when to use them.

Read more

Understanding the GREATEST() Function in DuckDB

The GREATEST() function in DuckDB is a versatile utility that returns the greatest value from a list of expressions. The function works across various data types and provides flexible comparison capabilities for data analysis tasks.

This article takes a look at DuckDB’s GREATEST() function, along with some simple examples.

Read more

Check if a Sub-List Appears in a Larger List in DuckDB: LIST_HAS_ALL()

When working with lists in DuckDB, we sometimes need to check whether a list contains specific elements. The list_has_all() function is a handy tool that allows us to verify if all elements of one list exist within another. This function is particularly useful in filtering queries, data validation, and advanced list-based operations.

In this article, we’ll explore how list_has_all() works in DuckDB.

Read more

Flattening Nested Lists with DuckDB’s FLATTEN() Function

DuckDB has a flatten() function that we can use to flatten nested lists. The function concatenates a list of lists into a single list. So whether the outer list contains just one list or multiple lists, we can use the flatten() function to flatten them into one list.

However, it only goes one level deep, so that’s something to keep in mind.

Read more

5 Functions that Concatenate Lists in DuckDB

DuckDB provides us with a bunch of list concatenation functions that do exactly the same thing; concatenate two lists. Actually, they’re all synonyms and so they can all be used interchangeably. There’s also a more general concatenation function that can also be used on lists.

So this article presents five functions that we can use to concatenate lists.

Read more

Taking a Look at the LEAST() Function in DuckDB

In DuckDB, the LEAST() function returns the smallest value from a list of expressions. The function works across various data types and provides flexible comparison capabilities for data analysis tasks.

In this article, we’ll explore DuckDB’s LEAST() function with some simple examples.

Read more

Understanding EXTRACT() in DuckDB

DuckDB offers a variety of date functions, one of which is the extract() function. This function is designed to retrieve a specific date part from a date or timestamp value, and it can also be applied to intervals.

In this article, we’ll take a closer look at the extract() function and provide some straightforward examples to illustrate how it works.

Read more

Sampling Rows from a Table in DuckDB with the SAMPLE Clause

DuckDB’s SAMPLE clause is a handy feature that allows us to work with a random subset of our data. This is particularly useful when dealing with large datasets where processing the entire dataset might be time-consuming or unnecessary for exploratory data analysis, testing queries, or creating representative samples.

When we use this clause, we can specify the absolute number of rows to return, or a percentage of rows. We also have an option of sampling method to use.

Read more