Mi duda es la siguiente:
Tengo una base de datos en access, Deseo hacer una consulta.
En mi Tabla Tengo muchos datos, los cuales siempre filtro por "proveedores",
"marroquineros", "suscriptores", "ortopedias".
Me gustaria hacer una consulta filtrando todos estos sectores menos "Ortopedias"...
Es decir, que en una consulta aparescan "proveedores", "marroquineros",
"suscriptores", y que "Ortopedias" no aparesca.
Espero ser claro. Un saludo
Desde ya muchas gracias =)
si das detalles de los campos de tu tabla sería mas facil :P.
pero sería algo como
select * from proveedores where CAMPODEFILTRADO not like 'Ortopedias'
Sinceramente no recuerdo si en Access se necesitaba algun caracter comodín tipo "%Ortopedias%" o "#Ortopedias#", pero creo que no.
Saludos.
Supuestamente no hace falta usar comodín en este caso.
Aunque te digo que el Acces tiene lo suyo, yo lo terminé odiando porque hay muchas consultas cosas que no funcionan.
PD: Asi como te lo dice Rosti tiene que andar.
Probaste usando el asistente?? la verdad es muy facil
Sino, en la vista de SQL tendrias que poner
SELECT [columnas] FROM [tabla] WHERE [nombre_col] IS NOT "Ortopedias"
o
SELECT [columnas] FROM [tablas] WHERE [nombre_col] EXISTS {"proveedores","marroquineros", "suscriptores"}
o
SELECT [columnas] FROM [tablas] WHERE [nombre_col] = "proveedores" OR [nombre_col] = "marroquineros" OR [nombre_col] = "suscriptores"
Los resultados de la primera seria cualquiera que no sea ortopedia (no me acuerdo ahora si es IS NOT o NOT IS, pero probalo), en cambio el segundo te devuelve los que el [nombre_col] es igual a "proveedores" o "marroquineros" o "suscriptores" (que es diferente al perimero, dependiendo de los datos que tengas). El tercero es igual al segundo (lo puse por las duads, por que no me acuerdo si el EXISTS es del standar ANSI o de algun motor en particular)
Lo que tendrias que hacer es rellenar las consultas con lo siguiente:
[columnas] : nombres de las columnas que queres mostrar en el resultado, separadas por comas, sin ""
[tablas] : nombre de la tabla donde sacas los datos
[nombre_col] : nobre de la columna que posee los valores por los cuales queres filtrar
Bueno, espero que te sirva, y cualquier cosa si no te anda, leete un manual de SQL jaja naa postealo aca
Saludos
EDIT:
PD: LLegue tarde :S
(http://i36.tinypic.com/2h3pfgm.gif)
ese es un ejemplo de la tabla, me gustaria ke en una consulta aparescan todos los datos pero que no aparescan los del sector "ORTOPEDIAS"
Si me pueden explicar en donde poner eso ke me explicaron aca arriba se los voy a agraddecer porq soy novato en esto
GRACIAS ARGENTOS!
select * from proveedores where sector not like 'Ortopedia'
Con respecto a donde poner la consulta.. ahi me fijo, no usé mas el Acces :P
EDITO:
1- Vas a la parte izquierda donde dice Tablas, Consultas, Formularios, etc... seleccionás "Consultas" y "Crear una consulta en vista de diseño".
2- Te va a aparecer una ventana con las tablas, la cerrás.
3- Clickeás con el boton derecho del mouse sobre la parte gris y vas a "Vista SQL"... escribís la consulta y listo.
(http://img147.imagevenue.com/loc765/th_24711_111111_122_765lo.JPG) (http://img147.imagevenue.com/img.php?image=24711_111111_122_765lo.JPG)
Al menos asi pude... seguramente haya alguna manera menos pedorra pero me acostumbré al SQL Server.
Entonces tendias que hacer:
SELECT * FROM Tabla WHERE SECTOR <> "Ortopedia";
tenes que ir a la pastaña de consultas, pones "crear consulta en vista de diseño", le das cancelar a la ventanita que te aparece, y arriba hay un boton "SQL", haces click y ahi pegas lo que puse arriba. Despues guardas la consulta con el nombre que quieras y cerras. Ya te quedo la consulta guardada en la pestaña de consultas, solo tenes que hacerle doble click apra ejecutarla
EDIT:
PD: tarde de nuevo, me canse no ayuda mas :,(
CitarSELECT * FROM Tabla WHERE SECTOR <> "Ortopedia";
joya, ya estoy encaminado, ahora una pregunta mas...
la palabra "Tabla" la tengo ke remplazar por el nombre de mi tabla?.. porq si hago eso me da "error de sintaxis en la clausula FROM"
Gracias
Si la tabla se llama... no se, "Registros" pongámosle, entonces la consulta sería asi:
select * from Registros where sector not like 'Ortopedia'
Mira, te dejo algo para que te guíes:
SELECT [El nombre de los campos que quieras seleccionar]
FROM [Nombre de la tabla]
WHERE [Condiciones]
Si vos ponés "SELECT *" te va a seleccionar todos los campos en cambio, por ejemplo si vos ponés "SELECT sector", nomás te va a mostrar los sectores.
La tabla se llama "general", y cuando le pongo este nombre al codigo ke me estan dando me tira el error de sintaxis :S ... perdon por ser tan cargoso :(
(http://i35.tinypic.com/vsgtjm.gif)
Capaz el error no esté en General.
Probá hacer solamente
Select * From General
Te tiene que traer todos los registros. Si funca, el error quizá esté en que Access no acepte el Like o alguna otra cosa de los rebusques que tiene ACCESS.
Que raro... probá esta:
SELECT sector
FROM general
where cp=1155
PD: Ah me ganó Elcalez :P
Access acepta Like, es mas recien probé la consulta en una tabla mia y anduvo :S
PD 2: Ya dije que odio Access? jaja.
Con las dos formulas me pasa lo mismo, Me tira el error ke puse mas arriba... y parece que el problema es la palabra "General" porq cuando salta el error automaticamente se selecciona esa palabra en la formula...
Ayuda porfavor, es un tema laboral :(
Gracias
PD: La tabla se llama "General", no hay confucion al tipear la formula ni nada :S
La verdad no se que decirte, si te pasa lo mismo con cualquier consulta entonces debe ser el Acces, otra no se me ocurre... nunca me pasó.
Es el 2003?
PD: Seguro seguro que la tabla se llama "General"? porque si siempre marca el error en la cláusula "FROM", el problema es con el nombre de la tabla... podrías probar cambiárselo también, aunque probablemente sea lo mismo.
si, el 2003 :S
probe cambiando en la formula la palabra "general" por cualquier otra y si me deja guardar la consulta... obviamente los resultados que me dan no son los que busco, Pero sigo sin comprender porq si utilizo la palabra "General" me tira ese error :S
Bueno al final cambie el nombre de la base y ahora anda... Quizas la palabra "GENERAL" es una funcion dentro de acces y por eso tiraba el error... la verdad nose, es lo unico que se me ocurre.
Gracias por el aguante y por ayudarme a resolver mis problemas!
:palmas:
Posta.
Recien probé creando una tabla llamada "General" y me salta el mismo error.
Cambiale el nombre a la tabla y hacé la consulta, seguro funca.
EDITO: Ah me ganaste de mano... suerte!!
Lo que podés hacer es dejar el nombre General a la tabla, y en la consulta usar [General] Eso se usa también cuando el nombre empieza con números o tiene operadores que harían que lo interprete como una operación.
Muchas gracias a todos =)
Como siempre argento solucionando mis problemas :up:
es una palabra reservada por access, pero no por los demás motores
http://office.microsoft.com/es-es/access/HA012315093082.aspx
pero debería haberte tirado algún error al querer ejecutar la consulta
http://support.microsoft.com/kb/286335/es
dónde quedó el mito de la portabilidad? ::) ::) ::) ::) ::) ::) ::) ::) ::)
las palabras reservadas son aquellas que no pueden usarse en programación o en base de datos dado que hacen referencia a funcionalidades del lenguaje, o tienen previsto que puedan cumplir funciones alguna vez (tal es el caso de la sentencia goto en java, heredada de c, pero que no tiene funcionalidad asociada todavía)
Cita de: lugolu en Agosto 13, 2008, 23:31:31
es una palabra reservada por access, pero no por los demás motores
http://office.microsoft.com/es-es/access/HA012315093082.aspx
pero debería haberte tirado algún error al querer ejecutar la consulta
http://support.microsoft.com/kb/286335/es
dónde quedó el mito de la portabilidad? ::) ::) ::) ::) ::) ::) ::) ::) ::)
las palabras reservadas son aquellas que no pueden usarse en programación o en base de datos dado que hacen referencia a funcionalidades del lenguaje, o tienen previsto que puedan cumplir funciones alguna vez (tal es el caso de la sentencia goto en java, heredada de c, pero que no tiene funcionalidad asociada todavía)
Linda cochinada.
Bueno, mas a mi favor mi odio al Acces jaja,