Add Hours to a Date/Time Value in DuckDB

DuckDB provides us with a range of functions and operators that we can use to manipulate date, time, and timestamp values. One basic operation you might find yourself having to perform is date/time arithmetic, such as adding one or more hours to a date/time value.

Below are two methods we can use in order to add one or more hours to a date, timestamp, or time value.

Read more

Why SQLite Allows NULL Values in Primary Key Columns

SQLite, one of the most widely used database engines, is known for its lightweight design, ease of use, and adherence to most aspects of the SQL standard. However, one notable deviation from the standard lies in its handling of PRIMARY KEY constraints. Unlike the SQL standard, SQLite allows NULL values in primary key columns in some cases.

Let’s look at the reasons behind this behavior, and explore the implications of NULL values in primary key columns. We’ll also examine SQLite’s treatment of NULL values as distinct for uniqueness constraints.

Read more

Using the .nullvalue Command to See NULL Output in the DuckDB CLI

By default, when a query returns a null value in the DuckDB command line interface (CLI), an empty string is displayed. This may or may not be what you want. But if you’re like me, you probably want DuckDB to explicitly tell you that it’s a null value. After all, if an empty string is returned, perhaps the data contained an empty string?

Fortunately, DuckDB provides us with the .nullvalue dot command so that we can change the output of null values.

Read more

7 Functions that Return the Current Date in DuckDB

DuckDB provides us with a bunch of functions that we can use to return the current date and/or time. We can get the date in local time or coordinated universal time (UTC), depending on the function we use. These can be useful in a range of scenarios, such logging the current date in a database column, or filtering or comparing dates based on the current date.

Read more

Understanding the STRPTIME() Function in DuckDB

DuckDB provides us with a good selection of date/time functions. The strptime() function is a useful one for times where you need to convert a date string into a valid timestamp value; its sole purpose is to parse strings into timestamps.

In this article, we’ll look at how the strptime() function works, along with some examples to demonstrate.

Read more

How to Check a Table for Unique Indexes in SQLite

Being able to ensure uniqueness in database tables is critical for maintaining data integrity. SQLite allows us to create unique indexes in order to enforce uniqueness, and it provides us with tools to check the unique indexes associated with a table.

This article outlines how to use the SQLite PRAGMA index_list() command to check a table for unique indexes.

Read more