What is NDJSON?

Newline Delimited JSON (NDJSON) is a specialized data format that provides a simple yet powerful way to handle streaming JSON data. While standard JSON is excellent for representing structured data, NDJSON addresses specific use cases where processing large datasets and streaming data is required.

This article takes a quick look at NDJSON and how it differs from regular JSON.

Continue reading

What is JSON?

JavaScript Object Notation, commonly known as JSON, is a lightweight, text-based data interchange format that has become one of the most widely used standards for transmitting data across the internet.

Despite its origins in JavaScript, JSON has evolved into a language-independent format, making it an essential tool for developers working with any programming language or platform.

Continue reading

How to Change the Output Mode in the DuckDB CLI

DuckDB is a database management system tailored for analytical tasks. Its command line interface (CLI) provides a convenient way to interact with databases and execute queries. The CLI provides us with the ability to configure the output mode for query results, offering flexibility in how data is displayed or exported.

This article provides a quick overview of how to change the output mode in the DuckDB CLI.

Continue reading

5 Ways to Create a Database in DuckDB

DuckDB is a lightweight, high-performance database system designed for analytical workloads. As with any database management system (DBMS), one of the first things we normally want to do when we launch it is to create or open a database.

When it comes to creating a database, you can’t create a database in DuckDB by using the SQL CREATE DATABASE statement (unless you’re using a tool that allows you to do so). DuckDB works differently.

In this article, we look at various options for creating a database in DuckDB.

Continue reading

Getting Started with DuckDB Command Line Interface

DuckDB is a high-performance in-process analytical database management system, often referred to as the “SQLite for analytics.” Its Command Line Interface (CLI) is a useful tool for executing SQL queries, managing databases, and exploring DuckDB’s features.

This article provides a comprehensive guide to the basics of using DuckDB’s CLI, helping beginners and advanced users alike understand how to leverage it effectively.

Continue reading

What is DuckDB?

This article takes a look at DuckDB, a modern database management system (DBMS) designed specifically for data analysis and processing.

Often described as the “SQLite for analytics,” DuckDB is lightweight, embeddable, and highly efficient, making it a popular choice for those working with structured data.

Whether you’re considering DuckDB for your projects or simply curious about its capabilities, this article will give you a basic overview of what it is and how it fits into the data analytics landscape.

Continue reading

Fix Error “AUTOINCREMENT not allowed on WITHOUT ROWID tables” in SQLite

If you’re getting an error that reads “AUTOINCREMENT not allowed on WITHOUT ROWID tables” in SQLite, it appears that you’re trying to define a column as an AUTOINCREMENT in a WITHOUT ROWID table.

SQLite doesn’t allow us to create AUTOINCREMENT columns on WITHOUT ROWID tables.

To address this issue, either remove the AUTOINCREMENT attribute or remove the WITHOUT ROWID from the table definition.

Continue reading

An Introduction to SQLite’s LIKELY() Function

SQLite provides a range of tools to help optimize query execution. One of these is the likely() function, which helps developers guide the query planner by hinting at the probability of certain conditions being true.

In this article, we’ll look at the likely() function, understanding how it works, its syntax, some use cases, and its impact on query performance.

Continue reading