Estoy analisando consultas que ya estas hechas, no soy experto, y tengo esa duda, mi actual jefe establece los filtros con el siguiente rango de fechas:
and to_date(to_char(mmt.TRANSACTION_DATE, 'dd-mon-yyyy')) >= :p_fecha_ini
and to_date(to_char(mmt.TRANSACTION_DATE, 'dd-mon-yyyy')) <= :p_fecha_fin
en donde el resultado es 2691 registros con parametros son de 01/08/12 a 31/08/12
pero, si uso between:
and mmt.transaction_date between ‘01/08/12’ and ‘31/08/12’
arroja como resultado 2403
Mi pregunta es por que se da esa diferencia y a cual irle y como quedaria la sintaxis si quisiera usar between en :
and to_date(to_char(mmt.TRANSACTION_DATE, 'dd-mon-yyyy')) >= :p_fecha_ini
and to_date(to_char(mmt.TRANSACTION_DATE, 'dd-mon-yyyy')) <= :p_fecha_fin