3 Ways to Find the Position of a Substring within a String in MySQL

MySQL has a number of string functions that return the position of a substring within a string. More specifically, they return the position of the first occurrence within the string (or the first occurrence after a given starting point).

The functions I’m referring to are as follows:

  • INSTR()
  • LOCATE()
  • POSITION()

Below is an overview of each one.

Continue reading

What’s the MySQL Equivalent of STUFF() in SQL Server?

If you’re familiar with SQL Server,  you might know that you can use the T-SQL STUFF() function to insert a string within a string.  As it turns out, MySQL has a similar function – but with a different name.

MySQL’s INSERT() function does essentially the same thing that the T-SQL STUFF() function does.

With the exception of a couple of minor differences (see below), both functions work exactly the same.

Continue reading

How to Insert a String into another String in MySQL using INSERT()

In MySQL, you can use the INSERT() function to insert a string into another string.

You can either replace parts of the string with another string (e.g. replace a word), or you can insert it while maintaining the original string (e.g. add a word). The function accepts 4 arguments which determine what the original string is, the position with which to insert the new string, the number of characters to delete from the original string, and the new string to insert.

Here’s the syntax:

INSERT(str,pos,len,newstr)

Where str is the original string, pos is the position that the new string will be inserted, len is the number of characters to delete from the original string, and newstr is the new string to insert.

Continue reading

The Difference Between FIELD() and FIND_IN_SET() in MySQL

MySQL includes a FIELD() function and a FIND_IN_SET() function that both return the position of a string within a list. However, these functions work slightly differently to each other.

The main difference between these two functions is this:

  • FIND_IN_SET() returns the index position of a string within a string list.
  • FIELD() returns the index position of a string within a list of arguments.

So one function searches a string list, and the other function searches a list of arguments.

Continue reading