tipos manejo insertar funciones formato fechas fecha diferencia dias datos as400 actual sql db2 ibm-midrange

manejo - Fecha aritmética con SQL y DB2 para i



manejo de fechas en db2 (1)

Creo que quieres una cláusula Where como la siguiente:

where "date" between current date - 2 years and current date

Necesita las comillas dobles porque la date es una palabra reservada. El resto es solo para obtener una cita en los últimos dos años.

Estoy tratando de ejecutar una consulta SQL que actualizará la información en una tabla específica. El problema con el que me estoy encontrando es que necesito la consulta para extraer la fecha de hoy, cualquiera que sea la fecha en que se ejecute la consulta, y luego solo extraer registros que se remontan a años. Luego deseo que devuelva un AVG de CUR_CASH_UNITS durante ese período de dos años. He intentado DATEDIFF y DATEADD y esos no parecen funcionar con el sistema que tengo porque devuelve un error * libl. Esto es lo que tengo:

Select Month, SSSALESNAM, CAT, Sum(Units) as Units From DW****.******EG Inner Join (Select CAT, STORE, MONTH(DATE) As Month, Sum(CUR_CASH_UNITS) As Units From DW*******.****AT Inner Join (Select CAT, CATNUM From DW****.*****ST) As Category_List On DW*******.****AT.CATEGORY_NUMBER=Category_List.CATNUM --Where (((CUR_CASH_UNITS.MONTH(DATE)) Between MONTH(DATE) And (MONTH(DATE)-24MONTH)) Group by Cat, Store, MONTH(DATE)) As Cash_Units On DW****.******EG.SSSTR=Cash_Units.STORE Group By Month, SSSALESNAM, CAT Order By Month, SSSALESNAM

La sección anterior que está comentada es solo uno de mis intentos de hacer funcionar la aritmética de la fecha. Con la instrucción Where comentada, la consulta se ejecutó correctamente. La columna de fecha en mi tabla está etiquetada como FECHA con un formato de AAAA-MM-DD. Es algo nuevo en SQL, así que me disculpo por adelantado si es algo simple que estoy pasando por alto.