Q:

¿Como traer el valor de un campo de una BD de postgres por un limite de caracteres?

En una tabla (tb_medicamentos) de mi base de datos de postgres uno de los campos (desc_medicamentos) contiene un valor muy extenso, quisiera que al momento de hacer la consultar especificar que de ese campo me traiga una logitud de 50 caracteres.
¿Como podria hacer eso? (Soy nuevo en postgrest)
SELECT 
public.tb_medicamentos.orden, 
public.tb_medicamentos.desc_medicamentos
WHERE 
public.tb_medicamentos
WHERE 
public.tb_medicamentos.num_medicamentos = '2019'

A:

Puedes utilizar la función substring, con la siguiente sintaxis:
SELECT 
public.tb_medicamentos.orden, 
substring(public.tb_medicamentos.desc_medicamentos for 50)
WHERE 
public.tb_medicamentos
WHERE 
public.tb_medicamentos.num_medicamentos = '2019'

En este caso for 50 significa que tomaremos los primeros 50 caracteres, dicha función acepta otro parámetro que es from X que permite iniciar el extracto a partir de dicha posición.

