Bueno de nuevo por estos lados para preguntar por un tema en específico, necesito hacer una comparación de texto en una función plpgsql, la comparación es con LIKE ya que el campo no tiene mucha importancia pero aún así hay que considerarlo.
El tema es que creo la consulta dinámicamente y luego la ejecuto con EXECUTE y no sé cómo hacer para meter el LIKE dentro de la consulta para que lo tome el EXECUTE
Considerando lo siguiente:
Código PLPGSQL:
Ver original
... sql = sql || ' WHERE columna LIKE %$1%'; ... FOR datos IN EXECUTE sql USING texto_a_buscar LOOP ...
Claramente eso no funciona, ¿Sabe alguien cómo hacerlo?
Lo otro que he notado es que al comparar con igualdad una columna con un texto, la comparación es Case Sensitive, en otras palabras si uso:
...WHERE columna=$1
Debo poner el valor de la columna con el mismo formato de mayúsculas y minúsculas o no lo encuentra. ¿Será alguna configuración de la BD que tengo mal seteada?
Saludos y muchas gracias