Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - cchianalino

#1
Hola EdePCal final no he podido lograr hacerlo desde mysql (si tome la logica que planteaste y lo realice desde php)

Todos los ";" (salvo del del DELIMITER) me daban error - "caracter inesperado"
Al quitarlos, CREATE me da el siguiente mensaje de error - "se econtro una nueva declaracion, pero no hay delimitado entre este y el anterior."

AL incorporar un DELIMITER para separar DROP de CREATE  y ejecutar la consulta
"#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'WHILE DAYNAME(fecha) <> 'Thursday' DO
    SET fecha = DATE_SUB(fecha, INTERVAL ' at line 4"

Probe borrando DROP y el error 1064 se repite.

voy a leer más en el manual porque esta claro que algo se me escapa.

-----------------------------------------------------------------------------
PHP
$juevesPasado = date('Y-m-d');
        $dia_fecha = date('l');
        while ($dia_fecha != 'Thursday') {
            //si hoy no es jueves le resto un día a la fecha
            $juevesPasado = strtotime('-1 day', strtotime($juevesPasado));
            $juevesPasado = date('Y-m-d', $juevesPasado);
            //resto un día al dia de la semana
            $dia_fecha = strtotime('-1 day', strtotime($juevesPasado));
            $dia_fecha = date('l', $juevesPasado);
        }
       
        $juevesProximo = date('Y-m-d');
        $dia_fecha_futuro = date('l');
        while ($dia_fecha_futuro != 'Thursday') {
            //si hoy no es jueves le sumo un día a la fecha
            $juevesProximo = strtotime('+1 day', strtotime($juevesProximo));
            $juevesProximo = date('Y-m-d', $juevesProximo);
            //sumo un día al dia de la semana
            $dia_fecha_futuro = strtotime('+1 day', strtotime($juevesProximo));
            $dia_fecha_futuro = date('l', $juevesProximo);
        }
        //si hoy es jueves - $juevesPasado = hoy y $juevesProximo = hoy + 7 dias
        if ($dia_fecha == 'Thursday') {
            $juevesPasado = date('Y-m-d');
            $juevesProximo = strtotime('+7 day', strtotime($juevesProximo));
            $juevesProximo = date('Y-m-d', $juevesProximo);
        }
//consulta mysql
$vencimiento_semanal = "SELECT SUM(MONTO) AS vencimiento_semana FROM cheques WHERE FECHA_COBRO BETWEEN '$juevesPasado' AND '$juevesProximo' AND ID_ESTADO = 1 AND ID_TIPO = 1";

fin PHP -------------------------------------------------------
Muchas gracias por la ayuda voy intentar dar con la solucion, me interesa también saber hacerlo desde mysql.
#2
Hola EdePC, muchisimas gracias ahora lo pruebo y te comento, tambien estoy por probar el siguiente codigo que me ayudaron desde otro foro.

-------------------------------------------------------
Puedes usar la función 'CURRENT_DATE()' o 'CURDATE()'; también puedes usar la constante, 'CURRENT_DATE',para conseguir la fecha actual. Puedes usar 'DAYOFWEEK()' para conseguir el día de la semana de la fecha actual como un número, donde 1 representa Domingo y obviamente 7 representaría Sábado. Como Jueves es 5, podemos calcular cuántos días tenemos que restar a la fecha actual para conseguir la fecha del jueves de la semana pasada: -7 + 5 - día. Asimismo, calculamos la fecha del jueves de la siguiente semana: 7 + 5 - día.
------------------------------------------------------
Como decia ahora pruebo ambas y te comento como me fue, gracias !!!!!!
#3
Hola a todos es mi primer tema en el foro, voy a intentar ser lo mas claro posible para ver si alguien puede ayudarme.
tengo en mi db un campo fecha y necesito filtrar los registros de esa tabla en un rango semanal que va de jueves a jueves.

SELECT* FROM datos WHERE fecha BETWEEN (jueves pasado) AND (jueves proximo)

Con el agregado que si el dia de hoy es jueves debe tomar desde "hoy" hasta el jueves proximo.

Desde ya muchas gracias !!!!
#4
Hola se que hace mucho que este hilo no tiene actividad pero... siempre alguien ayuda
si necesitara realizar una consulta en un rango que va de jueves a jueves a partir de una fecha.
tengo campo fecha y necesito haces
WHERE fecha BETWEEN (jueves pasado) AND (jueves proximo)
desde ya gracias !!!!