How PostgreSQL’s CHARACTER_LENGTH() Function Works

In PostgreSQL, we can use the character_length() function to return the number of characters in a given string.

It accepts one argument; the string for which to return the length.

The character_length() function is a synonym for the char_length() function and so both do the same thing. We can also use the length() function to get the same result.

Continue reading

Fix Error “column … cannot be cast automatically to type …” in PostgreSQL

If you’re getting an error that reads something like ‘column “c1” cannot be cast automatically to type text[]‘ in PostgreSQL, it could be that you’re trying to change a column’s type to one where the existing type can’t be implicitly cast to.

To fix this issue, try explicitly casting the column to the desired data type.

Continue reading

Understanding STRING_TO_ARRAY() in PostgreSQL

In PostgreSQL, string_to_array() is a string function that allows us to create an array from a string. It splits the string based on the specified delimiter and returns a text array as a result.

If we specify a null delimiter, then each character becomes an element in the array. If the delimiter string is empty, then the whole string becomes a single element in the array.

We also have the option of turning a specific substring into null if required.

Continue reading

A Brief Overview of SUBSTR() in PostgreSQL

In PostgreSQL, we can use the the substr() function to return a substring from a string, based on a starting point. We have the option of specifying how many characters to return.

We pass the string as the first argument and the start position as the second. If we want to specify how long the substring should be, we can pass a third argument that specifies how many characters to return.

The function returns the same result as the substring() function (which uses a slightly different syntax).

Continue reading

Fix “function array_sample(numeric, integer) does not exist” in PostgreSQL

If you’re getting an error that reads “function array_sample(numeric, integer) does not exist” when using the array_sample() function in PostgreSQL, it’s probably because your first argument is a numeric type instead of an array.

The first argument for this function must be an array.

To fix this error, be sure that your first argument to array_sample() is an array, not a numeric value.

Continue reading

How to Create a MySQL Event Only if it Doesn’t Already Exist

In MySQL we can use the CREATE EVENT statement to create scheduled events. As with many CREATE ... statements, we have the option of using the IF NOT EXISTS clause to specify that the object should only be created if it doesn’t already exist.

Of course, we wouldn’t normally be trying to create an event if we know that it already exists. But there may be times where we’re not sure, and we want our code to handle this scenario without throwing an error if an event with the same name already exists. This is common when creating scripts that are designed to be run across multiple environments. That’s where the IF NOT EXISTS clause can come in handy.

Continue reading