Conversión de cadena de texto a DATETIME

Consultas que convierten y manipulan un objeto DATETIME de SQL Server

Una de las funcionalidades que , aunque en ocasiones son un dolor de cabeza, son interesantes de conocer, ya que nos permiten manejar de mejor forma la información que tenemos en base de datos, ya sea para mostrar por pantalla o para la exportación de datos para ser consumidos por alguna persona, y siempre es bueno que lo entreguemos la información en el formato más natural posible, ya que la gran mayoría de los usuarios son personas comunes y corrientes y no seres sobrenaturales a-dimensionales como los informáticos que entendemos el glorioso valor de un TIMESTAMP. Es por ello que presento la siguiente funcionalidad que he ocupado por mucho tiempo y no había notado que no lo había compartido, es por ello que les presento una pequeña porción, pero muy útil, del uso de unas funcionalidades muy básicas en el manejo de fechas usando como fuente una fecha que viene en cadena de texto, esto porque en muchas ocasiones me he topado con el hecho que los datos vienen desde la fuente en String del tipo YYYYMMDD, pero, calma, que no panda el cúnico… porque hay solución.

Para la transformación del dato de texto a Datetime usé la función CAST de SqlServer y luego de transformarlo a fecha, le resté un mes con la función DATEADD y finalmente le di un formato como yo necesito. Sin más acá les dejo el código sencillo y espero que más que útil para más de alguno.

-- Obtención de un objeto DATETIME desde una cadena de texto

SELECT CAST('20200101' AS DATETIME)  AS fecha

-- resultado 
-- 01/01/2020 0:00:00


-- Resta de un mes a la fecha obtenida desde una cadena de texto

SELECT dateadd(month, -1, CAST('20200101' AS DATETIME))  AS fecha

-- resultado
-- 01/12/2019 0:00:00
                               
                               
-- Formatea una fecha a un patrón de fecha definido por el usuario
                               
SELECT format( dateadd(month, -1, CAST('20200101' AS DATETIME)), 'dd-MM-yyyy HH:mm:ss')  AS fecha

-- resultado
-- 01/12/2019 0:00:00

String Pad Left función relleno de caracteres en JAVA

person using macbook pro on person s lap

String Pad Left es una función sencilla que llena de caracteres específicos el lado izquierda de la cadena

String Pad Left es una implementación extremadamente sencilla de una función que llena con un carácter específico el lado izquierdo de una cadena para que tenga un largo final específico, por ejemplo, si tengo una cadena de texto «ZZZ» puedo modificar esta cadena para que tenga un largo de 10 caracteres siendo llenada por la izquierda con el carácter «Y» dando como resultado la cadena «YYYYYYYZZZ».  Esta implementación la use para una aplicación en particular que estoy desarrollando y como se ajustó bien al problema que tenía que resolver, la verdad, es que no la he tocado más, pero probablemente tendré que mejorarla en un futuro muy cercano. De todas formas la dejo por si te sirve, al menos, como base de una solución.