What is the CHARINDEX (SQL SERVER) equivalent in POSTGRESQL?

64.6k views Asked by At

I am trying CHARINDEX in Postgresql. But it says:

function CHARINDEX() does not exist

If no such inbuilt function exists in postgresql, then is there any function that serves as an alternative to charindex?
If yes, What is the CHARINDEX (SQL SERVER) equivalent in POSTGRESQL ?

2

There are 2 answers

0
user_0 On BEST ANSWER

The equivalent function in postgresql is:

strpos(string, substring)

Or:

position(substring in string)

They are equivalent, just with different order in parameters.
If you also need parameter start_location, you will need to pass a substring to strpos.

You can find them in: https://www.postgresql.org/docs/current/functions-string.html

0
mizan rahman On
  • In SQL Server CHARINDEX syntax is

    SELECT CHARINDEX(Substring, String)
    

    and example as like

    SELECT CHARINDEX('m','Zarm')
    

    this query returned 4.

  • Case of PostgreSQL syntax is

    strpos(string, substring)
    

    And example is

    SELECT strpos('Amal', 'l')
    

    this query returned 4.