Imprimir página | Cerrar ventana

SQL mostrar-borrar registros un dia de la semana

Impreso de: Foro de Access y VBA
Categoría: Access y VBA
Nombre del foro: Access y VBA
Descripción del foro: Foro de programacion en Access (Con código y sin código)
URL: http://www.mvp-access.com/foro/forum_posts.asp?TID=84689
Fecha de impresión: 22/Octubre/2019 a las 03:53


Tema: SQL mostrar-borrar registros un dia de la semana
Publicado por: anjemalo
Asunto: SQL mostrar-borrar registros un dia de la semana
Fecha de publicación: 04/Septiembre/2019 a las 21:32
Buenas:

Me pueden decir como crear una consulta para que me devuelva o borre todos los registros que sean un sábado, por ejemplo?

Yo estoy utilizando esta consulta pero me da error
 SQL="SELECT * From MiTabla WHERE fld_Dia<Date() AND UserId <= 200  AND WeekDay([fld_Dia,7]);"

muchas gracias



Respuestas:
Publicado por: xavi
Fecha de publicación: 04/Septiembre/2019 a las 22:01
Creo que tienes el corchete mal puesto

 SQL="SELECT * From MiTabla WHERE fld_Dia<Date() AND UserId <= 200  AND WeekDay([fld_Dia],7);"



-------------
Xavi, un minyó de Terrassa

http://www.llodax.com" rel="nofollow - Mi web


Publicado por: anjemalo
Fecha de publicación: 04/Septiembre/2019 a las 22:04
He quitado los corchetes y tampoco me devuelve el sábado, me devuelve los registros de todos los dias de la semana.

SQL="SELECT * From MiTabla WHERE fld_Dia<Date() AND UserId <= 200  AND WeekDay(fld_Dia,7);"


Publicado por: xavi
Fecha de publicación: 04/Septiembre/2019 a las 22:20
Vale: te falta la igualdad!

Si no indicas el segundo argumento de la función WeekDay, el sistema asume que el primer dia de la semana es el domingo (valor 1) por lo que el sábado es el 7
SELECT * FROM MiTabla WHERE fld_Dia<Date() AND UserId<=200 AND Weekday([fld_Dia]) = 7

Si indicas el segundo argumento para poner que empieze por el lunes, entonces la igualdad es "contra" el 6
SELECT * FROM MiTabla WHERE fld_Dia<Date() AND UserId<=200 AND Weekday([fld_Dia], 2) = 6


-------------
Xavi, un minyó de Terrassa

http://www.llodax.com" rel="nofollow - Mi web


Publicado por: anjemalo
Fecha de publicación: 04/Septiembre/2019 a las 22:32
Muchas gracias, me ha funcionadoSmile


Publicado por: anjemalo
Fecha de publicación: 05/Septiembre/2019 a las 08:56
Quiero borrar los registros de esta consulta:
DELETE * FROM MiTabla WHERE fld_Dia<Date() AND UserId<=200 AND Weekday([fld_Dia], 2) = 6
pero me gustaria que una variable me indicara si se ejecutó bien la consulta.

Gracias


Publicado por: xavi
Fecha de publicación: 05/Septiembre/2019 a las 11:49
Hola,

Revisa este enlace a ver si te sirve:

https://docs.microsoft.com/es-es/office/client-developer/access/desktop-database-reference/database-recordsaffected-property-dao" rel="nofollow - https://docs.microsoft.com/es-es/office/client-developer/access/desktop-database-reference/database-recordsaffected-property-dao


-------------
Xavi, un minyó de Terrassa

http://www.llodax.com" rel="nofollow - Mi web



Imprimir página | Cerrar ventana