If you’re getting an error that reads something like “No function matches the given name and argument types” when using the generate_subscripts()
function in DuckDB, it could be that your first argument is not an array. Or it could be that your second argument is not compatible with the INT64
type.
Category: DBMS
Database Management Systems
A Quick Overview of LIST_REVERSE_SORT() in DuckDB
While it’s true that DuckDB has a list_sort()
function that allows us to sort lists, it’s also true that there’s a list_reverse_sort()
function that sorts lists in reverse order.
Using LIST_REVERSE() to Reverse the Items in a List in DuckDB
Deep amongst DuckDB’s vast selection of list functions lies the list_reverse()
function. This function reverses the elements in a list. We simply pass the list to the function and it reverses the order of the elements in that list.
Not to be confused with the list_sort()
or list_reverse_sort()
functions, the list_reverse()
function reverses the order of the items as they currently sit in the list. The ...sort()
functions on the other hand, actually perform a sort operation on the list items.
A Look at DuckDB’s LIST_SORT() Function
DuckDB has a list_sort()
function that does exactly what its name promises; sorts lists.
While the easiest way to use this function is to simply pass a list, we can also pass other arguments to fine-tune the results.
Continue readingSuppressing Query Output in the DuckDB CLI
DuckDB’s command-line interface (CLI) provides a way to suppress query results using the .mode trash
command. This feature is particularly useful in scenarios where you need to execute queries but don’t want their results to be displayed.
Working with Intervals in DuckDB
Time-based operations are a fundamental aspect of data analysis and manipulation. DuckDB, the in-process analytical database management system, provides robust support for handling time-based operations through its INTERVAL
data type.
This article explores the capabilities, syntax, and practical applications of intervals in DuckDB.
Continue reading2 Ways to Return the Number of Rows Changed by a SQL Statement in SQLite
SQLite provides several ways to determine how many rows are affected by SQL statements such as INSERT
, UPDATE
or DELETE
.
One way of achieving this is with the changes()
function. This function returns the number of rows modified by the most recent SQL statement executed in the current session.
Another way is with the .changes
dot command.
In this article, we’ll look at an example that uses these options to get the number of rows changed by various SQL statements.
Continue readingUsing DATE_PART() to Extract Date and Time Components in DuckDB
DuckDB provides us with a good selection of functions for working with date/time values. Among them is date_part()
, which we can use to extract specific components from dates, timestamps, and intervals.
In this article, we’ll look how the date_part()
function works, along with some basic examples.
Fix “Out of Range Error” When Using GENERATE_SUBSCRIPTS() in DuckDB
If you’re getting an “Out of Range Error” when using the generate_subscripts()
function in DuckDB, it could be that you’re specifying a non-existent dimension for the array.
DuckDB’s generate_subscripts()
function accepts the array as the first argument, and the dimension as the second argument. The second argument must correspond to an actual dimension present in the array.
To fix this issue, be sure to specify a dimension that actually exists in the array.
Continue readingLooking at DuckDB’s STRING_AGG() Function
DuckDB has a string_agg()
function, which allows us to concatenate strings from a group of rows into a single string. This function can be useful when we need to aggregate text data in a meaningful way.
In this article, we’ll explore how the string_agg()
function works, along with some simple examples to demonstrate its usage.