Ayuda con error "too complex" al realizar una consulta en una base de datos acces
Hola buen día estoy haciendo un query en access y la puedo guardar y todo pero al momento que la quiero ejecutar me marca too complex y no puedo hacerla más corta ya que necesito todos los campos que están ahí condicionados incluso existe la posibilidad de que puedan crecer, quisiera saber si pudieras ayudarme a brincarme ese error o que conozcas alguna otra manera que me pudieras decir, espero y puedas ayudarme de antemano gracias.
Tere
Tere
1 respuesta
Respuesta de Roberto Alvarado
1
1
Roberto Alvarado, Desarrollador de aplicaciones en plataforma
No se que tam compleja sea tu consulta pero el mensaje me imagino que es por la gran cantidad de texto de la consulta, te recomiendo que si utilizas nombretabla. Campo, cambies nombretabla por una letra, y en el FROM después del nombre de ka tabla le coloques la letra especifica.
Mira mi query es este: y ya le quite lo que me decías pero me sigue marcando lo mismo, espero puedas ayudarme-
SELECT fecha, maquina, inventario, subgrupo, nom_subgrupo, quienreporta, defecto, reparacion, causa, tecnico,fechareparacion, turno, status
FROM mainplan
WHERE (((inventario) Like "MX101060*"
Or (inventario) Like "MX102500*"
Or (inventario) Like "MX101050*"
Or (inventario) Like "MX010103*"
Or (inventario) Like "MX101010*"
Or (inventario) Like "MX010101*"
Or (inventario) Like "MX010100*"
Or (inventario) Like "MX101030*"
Or (inventario) Like "MX000100*"
Or (inventario) Like "400340*"
Or (inventario) Like "MX400340*"
Or (inventario) Like "MX101110*"
Or (inventario) Like "MX001366*"
Or (inventario) Like "MX123000*"
Or (inventario) Like "MX001365*"
Or (inventario) Like "US120100*"
Or (inventario) Like "021090*"
Or (inventario) Like "US124500*"
Or (inventario) Like "402200*"
Or (inventario) Like "098350*"
Or (inventario) Like "US137300*"
Or (inventario) Like "US137100*"
Or (inventario) Like "US137200*"
Or (inventario) Like "US013020*"
Or (inventario) Like "MX118800*"
Or (inventario) Like "MX097200*"
Or (inventario) Like "MX097100*"
Or (inventario) Like "MX050140*"
Or (inventario) Like "MX003600*"
Or (inventario) Like "MX135100*"
Or (inventario) Like "*098140*"
Or (inventario) Like "US20802*"
Or (inventario) Like "020820*"
Or (inventario) Like "MX001200*"
Or (inventario) Like "MX020330*"
Or (inventario) Like "MX101810*"
Or (inventario) Like "MX050320*"
Or (inventario) Like "235011*"
Or (inventario) Like "MX000502*"
Or (inventario) Like "US130100*"
Or (inventario) Like "MX130100*"
Or (inventario) Like "MX084801*"
Or (inventario) Like "084801*"
Or (inventario) Like "MX000300*"
Or (inventario) Like "MX084803*"
Or (inventario) Like "MX135102*"
Or (inventario) Like "MX084804*"
Or (inventario) Like "MX050286*"
Or (inventario) Like "GSC2479*"
Or (inventario) Like "MX003300*"
Or (inventario) Like "MX002300*"
Or (inventario) Like "MX112838*"
Or (inventario) Like "MX135103*"
Or (inventario) Like "MX102702*"
Or (inventario) Like "MX000900*"
Or (inventario) Like "4024100*"
Or (inventario) Like "US130500*"
Or (inventario) Like "US12390*"
Or (inventario) Like "047400*"
Or (inventario) Like "MX0351*"
Or (inventario) Like "US13930*"
Or (inventario) Like "US139300*"
Or (inventario) Like "US139000*"
Or (inventario) Like "402400*"
Or (inventario) Like "MX000500*"
Or (inventario) Like "MX006400*"
Or (inventario) Like "094280*"
Or (inventario) Like "MX001100*"
Or (inventario) Like "MX000110*"
Or (inventario) Like "MX001101*"
Or (inventario) Like "MX010065*"
Or (inventario) Like "MX003200*"
Or (inventario) Like "MX135104*"
Or (inventario) Like "US1780*"
Or (inventario) Like "MX01780*"
Or (inventario) Like "094000*"
Or (inventario) Like "MX000505*"
Or (inventario) Like "MX100740*"
Or (inventario) Like "MX010067*"
Or (inventario) Like "MX111700*"
Or (mainplan. inventario) Like "MX135105*"
Or (mainplan. inventario) Like "US131000*"
Or (mainplan. inventario) Like "MX002700*"
Or (mainplan. inventario) Like "MX000010*"
Or (mainplan. inventario) Like "US132200*"
Or (mainplan. inventario) Like "US132500*"
Or (mainplan. inventario) Like "US131200*"
Or (mainplan. inventario) Like "US132000*"
Or (mainplan. inventario) Like "203120*"
Or (mainplan. inventario) Like "402930*"
Or (mainplan. inventario) Like "MX102390*"
Or (mainplan. inventario) Like "MX000270*"
Or (mainplan. inventario) Like "US135900*"
Or (mainplan. inventario) Like "MX013200*"
Or (mainplan. inventario) Like "US013630*"
Or (mainplan. inventario) Like "MX000400*"
Or (mainplan. inventario) Like "MX005503*"
Or (mainplan. inventario) Like "342402*"
Or (mainplan. inventario) Like "MX050078*"
Or (mainplan. inventario) Like "US130200*"
Or (inventario) Like "MX101020*"
Or (inventario) Like "MX035220*"
Or (inventario) Like "094070*"
Or (inventario) Like "MX102700*"
Or (inventario) Like "094020*"
Or (inventario) Like "MX103900*"
Or (inventario) Like "US035270*"
Or (inventario) Like "RECIPR*"
Or (inventario) Like "MX118801*"
Or (inventario) Like "US141200*"
Or (inventario) Like "US141000*"
Or (inventario) Like "MX002900*"
Or (inventario) Like "MX100520*"
Or (inventario) Like "US150100*"
Or (inventario) Like "402271*"
Or (inventario) Like "US008800*"
Or (inventario) Like "7508*"
Or (inventario) Like "3424019800*"
Or (inventario) Like "MX302401*"
Or (inventario) Like "MX342402*"
Or (inventario) Like "3424020000*"
Or (inventario) Like "4022100*"
Or (inventario) Like "4022200*"
Or (inventario) Like "MX002600*"
Or (inventario) Like "MX131900*"
Or (inventario) Like "MX019280*"
Or (inventario) Like "US152000*"
Or (inventario) Like "US036130*"
Or (inventario) Like "US152200*"
Or (inventario) Like "4023800*"
Or (inventario) Like "4023700*"
Or (inventario) Like "MX003500*"
Or (inventario) Like "MX102290*"
Or (inventario) Like "094270*"
Or (inventario) Like "094320*"
Or (inventario) Like "MX050177*"
Or (inventario) Like "MX050148*"
Or (inventario) Like "MX050360*"
Or (inventario) Like "MX050204*"
Or (inventario) Like "MX050202*"
Or (inventario) Like "MX050357*"
Or (inventario) Like "US156800*"
Or (inventario) Like "MX050198*"
Or (inventario) Like "MX050359*"
Or (inventario) Like "MX000700*"
Or (inventario) Like "MX050175*"
Or (inventario) Like "MX050170*"
Or (inventario) Like "US158400*"
Or (inventario) Like "094260*"
Or (inventario) Like "US003613*"
Or (inventario) Like "402270*"
Or (inventario) Like "MX102705*"
Or (inventario) Like "US056*"
Or (inventario) Like "094026*"
Or (inventario) Like "MX94026*"
Or (inventario) Like "MX003000*"
Or (inventario) Like "US123600*"
Or (inventario) Like "US125680*"
Or (inventario) Like "402130*"
Or (inventario) Like "24930*"
Or (inventario) Like "MX101150*"
Or (inventario) Like "MX083901*"
Or (inventario) Like "*020960*"
Or (inventario) Like "*MX020960*"
Or (inventario) Like "US125800*"
Or (inventario) Like "US120300*"
Or (inventario) Like "US121200*"
Or (inventario) Like "US120400*"
Or (inventario) Like "MX1005602*"
Or (inventario) Like "402970*"
Or (inventario) Like "*036780*"
Or (inventario) Like "*MX036780*"
Or (inventario) Like "402980*"
Or (inventario) Like "MX124900*"
Or (inventario) Like "MX100510*"
Or (inventario) Like "US121300*"
Or (inventario) Like "US121900*"
Or (inventario) Like "US125900*"
Or (inventario) Like "US12040B*"
Or (inventario) Like "*010410*"
Or (inventario) Like "02403*"
Or (inventario) Like "MX020340*"
Or (inventario) Like "MX0370*"
Or (inventario) Like "MX0371*"
Or (inventario) Like "US084170*"
Or (inventario) Like "US123800*")
AND ((status) Is Not Null));
Y no puedo quitar todos los necesito así juntos de echo probablemente podría hasta crecer y no se con el tiempo quitarle según sea el caso
Tere
SELECT fecha, maquina, inventario, subgrupo, nom_subgrupo, quienreporta, defecto, reparacion, causa, tecnico,fechareparacion, turno, status
FROM mainplan
WHERE (((inventario) Like "MX101060*"
Or (inventario) Like "MX102500*"
Or (inventario) Like "MX101050*"
Or (inventario) Like "MX010103*"
Or (inventario) Like "MX101010*"
Or (inventario) Like "MX010101*"
Or (inventario) Like "MX010100*"
Or (inventario) Like "MX101030*"
Or (inventario) Like "MX000100*"
Or (inventario) Like "400340*"
Or (inventario) Like "MX400340*"
Or (inventario) Like "MX101110*"
Or (inventario) Like "MX001366*"
Or (inventario) Like "MX123000*"
Or (inventario) Like "MX001365*"
Or (inventario) Like "US120100*"
Or (inventario) Like "021090*"
Or (inventario) Like "US124500*"
Or (inventario) Like "402200*"
Or (inventario) Like "098350*"
Or (inventario) Like "US137300*"
Or (inventario) Like "US137100*"
Or (inventario) Like "US137200*"
Or (inventario) Like "US013020*"
Or (inventario) Like "MX118800*"
Or (inventario) Like "MX097200*"
Or (inventario) Like "MX097100*"
Or (inventario) Like "MX050140*"
Or (inventario) Like "MX003600*"
Or (inventario) Like "MX135100*"
Or (inventario) Like "*098140*"
Or (inventario) Like "US20802*"
Or (inventario) Like "020820*"
Or (inventario) Like "MX001200*"
Or (inventario) Like "MX020330*"
Or (inventario) Like "MX101810*"
Or (inventario) Like "MX050320*"
Or (inventario) Like "235011*"
Or (inventario) Like "MX000502*"
Or (inventario) Like "US130100*"
Or (inventario) Like "MX130100*"
Or (inventario) Like "MX084801*"
Or (inventario) Like "084801*"
Or (inventario) Like "MX000300*"
Or (inventario) Like "MX084803*"
Or (inventario) Like "MX135102*"
Or (inventario) Like "MX084804*"
Or (inventario) Like "MX050286*"
Or (inventario) Like "GSC2479*"
Or (inventario) Like "MX003300*"
Or (inventario) Like "MX002300*"
Or (inventario) Like "MX112838*"
Or (inventario) Like "MX135103*"
Or (inventario) Like "MX102702*"
Or (inventario) Like "MX000900*"
Or (inventario) Like "4024100*"
Or (inventario) Like "US130500*"
Or (inventario) Like "US12390*"
Or (inventario) Like "047400*"
Or (inventario) Like "MX0351*"
Or (inventario) Like "US13930*"
Or (inventario) Like "US139300*"
Or (inventario) Like "US139000*"
Or (inventario) Like "402400*"
Or (inventario) Like "MX000500*"
Or (inventario) Like "MX006400*"
Or (inventario) Like "094280*"
Or (inventario) Like "MX001100*"
Or (inventario) Like "MX000110*"
Or (inventario) Like "MX001101*"
Or (inventario) Like "MX010065*"
Or (inventario) Like "MX003200*"
Or (inventario) Like "MX135104*"
Or (inventario) Like "US1780*"
Or (inventario) Like "MX01780*"
Or (inventario) Like "094000*"
Or (inventario) Like "MX000505*"
Or (inventario) Like "MX100740*"
Or (inventario) Like "MX010067*"
Or (inventario) Like "MX111700*"
Or (mainplan. inventario) Like "MX135105*"
Or (mainplan. inventario) Like "US131000*"
Or (mainplan. inventario) Like "MX002700*"
Or (mainplan. inventario) Like "MX000010*"
Or (mainplan. inventario) Like "US132200*"
Or (mainplan. inventario) Like "US132500*"
Or (mainplan. inventario) Like "US131200*"
Or (mainplan. inventario) Like "US132000*"
Or (mainplan. inventario) Like "203120*"
Or (mainplan. inventario) Like "402930*"
Or (mainplan. inventario) Like "MX102390*"
Or (mainplan. inventario) Like "MX000270*"
Or (mainplan. inventario) Like "US135900*"
Or (mainplan. inventario) Like "MX013200*"
Or (mainplan. inventario) Like "US013630*"
Or (mainplan. inventario) Like "MX000400*"
Or (mainplan. inventario) Like "MX005503*"
Or (mainplan. inventario) Like "342402*"
Or (mainplan. inventario) Like "MX050078*"
Or (mainplan. inventario) Like "US130200*"
Or (inventario) Like "MX101020*"
Or (inventario) Like "MX035220*"
Or (inventario) Like "094070*"
Or (inventario) Like "MX102700*"
Or (inventario) Like "094020*"
Or (inventario) Like "MX103900*"
Or (inventario) Like "US035270*"
Or (inventario) Like "RECIPR*"
Or (inventario) Like "MX118801*"
Or (inventario) Like "US141200*"
Or (inventario) Like "US141000*"
Or (inventario) Like "MX002900*"
Or (inventario) Like "MX100520*"
Or (inventario) Like "US150100*"
Or (inventario) Like "402271*"
Or (inventario) Like "US008800*"
Or (inventario) Like "7508*"
Or (inventario) Like "3424019800*"
Or (inventario) Like "MX302401*"
Or (inventario) Like "MX342402*"
Or (inventario) Like "3424020000*"
Or (inventario) Like "4022100*"
Or (inventario) Like "4022200*"
Or (inventario) Like "MX002600*"
Or (inventario) Like "MX131900*"
Or (inventario) Like "MX019280*"
Or (inventario) Like "US152000*"
Or (inventario) Like "US036130*"
Or (inventario) Like "US152200*"
Or (inventario) Like "4023800*"
Or (inventario) Like "4023700*"
Or (inventario) Like "MX003500*"
Or (inventario) Like "MX102290*"
Or (inventario) Like "094270*"
Or (inventario) Like "094320*"
Or (inventario) Like "MX050177*"
Or (inventario) Like "MX050148*"
Or (inventario) Like "MX050360*"
Or (inventario) Like "MX050204*"
Or (inventario) Like "MX050202*"
Or (inventario) Like "MX050357*"
Or (inventario) Like "US156800*"
Or (inventario) Like "MX050198*"
Or (inventario) Like "MX050359*"
Or (inventario) Like "MX000700*"
Or (inventario) Like "MX050175*"
Or (inventario) Like "MX050170*"
Or (inventario) Like "US158400*"
Or (inventario) Like "094260*"
Or (inventario) Like "US003613*"
Or (inventario) Like "402270*"
Or (inventario) Like "MX102705*"
Or (inventario) Like "US056*"
Or (inventario) Like "094026*"
Or (inventario) Like "MX94026*"
Or (inventario) Like "MX003000*"
Or (inventario) Like "US123600*"
Or (inventario) Like "US125680*"
Or (inventario) Like "402130*"
Or (inventario) Like "24930*"
Or (inventario) Like "MX101150*"
Or (inventario) Like "MX083901*"
Or (inventario) Like "*020960*"
Or (inventario) Like "*MX020960*"
Or (inventario) Like "US125800*"
Or (inventario) Like "US120300*"
Or (inventario) Like "US121200*"
Or (inventario) Like "US120400*"
Or (inventario) Like "MX1005602*"
Or (inventario) Like "402970*"
Or (inventario) Like "*036780*"
Or (inventario) Like "*MX036780*"
Or (inventario) Like "402980*"
Or (inventario) Like "MX124900*"
Or (inventario) Like "MX100510*"
Or (inventario) Like "US121300*"
Or (inventario) Like "US121900*"
Or (inventario) Like "US125900*"
Or (inventario) Like "US12040B*"
Or (inventario) Like "*010410*"
Or (inventario) Like "02403*"
Or (inventario) Like "MX020340*"
Or (inventario) Like "MX0370*"
Or (inventario) Like "MX0371*"
Or (inventario) Like "US084170*"
Or (inventario) Like "US123800*")
AND ((status) Is Not Null));
Y no puedo quitar todos los necesito así juntos de echo probablemente podría hasta crecer y no se con el tiempo quitarle según sea el caso
Tere
¿Es obligatorio que utilices LIKE? LIKE hace las búsquedas más lentas pro lo que ue tiene que recorrer carácter a carácter el campo sobre el cual ejecuta la búsqueda.
No se, se me ocurre que puedes cambiar el where por algo como :
WHERE INVENTARIO IN ('CODIGO1, CODIGO2, ETC')
No se, se me ocurre que puedes cambiar el where por algo como :
WHERE INVENTARIO IN ('CODIGO1, CODIGO2, ETC')
Ya intente eso del in y no me marca error ni nada pero no me muestra nada, porque por ejemplo algo que yo quiero buscar es este osea el que tenga los primeros ocho iguales pero también todos los demás que los tengan al inicio "US121300*".
Y el like si me muestra lo que necesito pero así de grande me marca el error, espero y puedas aportarme tora idea, gracias de cualquier manera
Y el like si me muestra lo que necesito pero así de grande me marca el error, espero y puedas aportarme tora idea, gracias de cualquier manera
- Compartir respuesta
- Anónimo
ahora mismo