By using AWS re:Post, you agree to the Terms of Use

Use PostgreSQL LIKE % wildcards with RDS Data API?


I'm using RDS Aurora Serverless with PostgreSQL compatibility. I'm trying to write a query that uses the PostgreSQL LIKE clause with percentage signs as wildcard operators. This is what I'm using right now:

SELECT * FROM products WHERE name LIKE '%:productName%'

and the productName gets passed into the RDS Data API through a stringValue field parameter (since it comes from user input).

{ name: 'productName', value: { stringValue: variableFromUserInput } }

This doesn't seem to be working since my query always succeeds but returns no results. Is this use case supported with the RDS Data API and am I using this correctly?

1 Answer
Accepted Answer

A parameter inside the quoted value like that doesn't look right. I haven't used this API... but I have used many analogous ones.

Try a test like this:

SELECT * FROM products WHERE name LIKE '%' || :productName || '%'

That's a more typical way to reference your parameter.

answered 9 months ago
  • Worked like a charm! It also inspired me to try adding the %s to the parameter itself which also works { stringValue: '%' + variableFromUserInput + '%'}

You are not logged in. Log in to post an answer.

A good answer clearly answers the question and provides constructive feedback and encourages professional growth in the question asker.

Guidelines for Answering Questions