FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
||||
|
||||
SQL y clausula Count
Hola a todos, alguien me podria orientar con este codigo?
Lo unico que estoy haciendo es contar (COUNT) de un estado de Mexico, cuantos clientes corresponden a dicho estado. Lo estoy haciendo con 2 tablas unidos por Campo REGION Mexico=Base de Datos estado= Tabla estado con sus campos Nombre,Region cliente= Tabla cliente de un estado cualquiera, region es su campo Hasta el codigo de arriba bien, al hacer mi consulta si me muestra todos los clientes que corresponden a la region NORTE . Ahora: Con este codigo, voy a contar los registros que sean de la region NORTE, pero de la ciudad de MONTERREY
El problema es que siempre me saca de mi tabla cliente, los registros que sean iguales a mi tabla estado, o sea, no me cuenta solo aquellos clientes que sean exclusivamente de Monterrey. No hace la seleccion solo de Monterrey. si tengo 15 clientes en todo el norte ok, pero si de Monterrey tengo solo 7, siempre me muestra los 15. Creo que estoy implementando mal la opcion: COUNT(Mexico.estado.region)AND Nombre='MONTERREY'. Ya cheque de varia formas y siempre me salen los 15 clientes. Alguna sugerencia? Gracias. Karla |
#2
|
||||
|
||||
La condición Nombre='MONTERREY' debe estar situada dentro del WHERE no dentro del SELECT
|
#3
|
||||
|
||||
Cita:
Un saúdo.
__________________
Si no lees esto no vivirás tranquilo Non lle poñades chatas â obra namentras non se remata. O que pense que vai mal que traballe n’ela; hai sitio para todos. (Castelao) |
#4
|
||||
|
||||
Cita:
Ya lo habia intentado, y el resultado es cero 0 Última edición por karlaoax fecha: 13-09-2007 a las 17:34:59. |
#5
|
||||
|
||||
SQL y clausula Count
Hola, karlaoax; esto debería funcionar correctamente
aunque la consulta te estaría arrogando los mismos datos en región = 'NORTE', bueno tu luego haras la consulta a tus necesidades |
#6
|
||||
|
||||
A mi me funciona perfectamente.
Yo he hecho esto con las tablas que tengo y muestra perfectamente los datos. Sería más claro que usases alias para que las sentencias no sean tan largas, además no sé para qué necesitas la región 2 veces en el resultado (de la tabla "estado" y de la tabla "cliente"). Traducido a tus tablas creo que sería algo así:
|
#7
|
||||
|
||||
Sale, esto te debe funcionar
__________________
Conoce mi blog http://www.edgartec.com Última edición por poliburro fecha: 13-09-2007 a las 19:36:10. Razón: La indentación quedó fatal |
#8
|
||||
|
||||
gracias a todos por ayudarme.
Ahora si ya no tengo pacientes por atender, voy a dedicarle tiempo a ver el error que tengo, y analizar sus soluciones. Al rato posteo los resultados |
#9
|
||||
|
||||
Gracias:
kuan-yiu Ivanzinho GustavoCruz poliburro Con su apoyo ya pude resolver el error que tenia, y efectivamente lo que tenia mal era mal colocada mi condicion: Mexico.estado.Nombre = 'MONTERREY' Karla |
#10
|
||||
|
||||
Aunque me queda una duda, cuando agrego mas campos a la consulta, me arroja mis valores en blanco
Se puede implementar mas condiciones AND como lo estoy haciendo en mi ejemplo ? o estoy cometiendo un error AND Mexico.estado.Ape_Paterno = 'GARCIA' Última edición por karlaoax fecha: 14-09-2007 a las 18:02:29. |
#11
|
||||
|
||||
Puedes hacerlo sin problemas.
|
#12
|
||||
|
||||
Lo he hecho pero mis resultados sonm en blanco:
Alguna idea del error que me marca? |
#13
|
||||
|
||||
Hola karlaoax.
Tu consulta debería funcionar. ¿Dices que la consulta no te devuelve ningún registro? Si es así asegúrate de que tengas registros que cumplan la condición lógica impuesta. Por otro lado me llama la atención el nivel de agrupamiento.. puede que alli esté el error. Por lo general no es deseable, ni tiene sentido, realizar un agrupamiento mayor a 3 niveles. Y hablando de error ¿A que dices le dices error: al hecho de que no te devuelva registros, o a que verdaderamente te arroja un error? Si realmente te devuelve un error, sería oportuno que nos indique el texto completo de dicho error (y/o el número identificador). Como sugerencia, no es obligatorio anteponer la base de datos. Si trabajas con DBE, esto se hará automáticamente si el DBE lo vee necesario. Sólo se debe anteponer la base de datos en caso de estar haciendo consultas a distintas bases de datos. Es lo mismo hacer: que
Para finalizar ¿En que base de datos estás trabajando y que componentes estás empleando? Saludos, |
#14
|
||||
|
||||
A mi me llama la atención lo siguiente :
Los apellidos y el nombre, son de la tabla "estado" o de la tabla "cliente" ??? |
#15
|
||||
|
||||
Cita:
2.- Sin registro, no muestra ningun mensjae de error 3.- Utilizo MySQL + Mydac |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
clausula COUNT con Mysql | karlaoax | SQL | 1 | 08-08-2007 05:23:27 |
Clausula Like | JoseAntonio | SQL | 5 | 27-05-2007 08:28:47 |
Clausula LIKE | federiconqn21 | SQL | 3 | 28-12-2005 16:49:13 |
Delete sin clausula where | Fita | Conexión con bases de datos | 2 | 06-07-2005 02:35:04 |
Clausula UNION | TJose | Firebird e Interbase | 3 | 15-05-2003 21:59:56 |
|