![]() |
Consulta anidada y multitabla
Hola a todos!!
Tengo lo siguiente, espero me puedan apoyar, porque voy a enviar este reporte y me salen otros valores en la consulta:confused:
Esta consulta me regresa el numero de registros que necesito, y me muestra el campo 1 y campo 2 de la tabla paciente, pero yo quiero que tambien, de esos registros que encontro, me regrese algunos campos de la tabla cita, que se encuentra en la consulta anidada, pero no lo puedo hacer, intente lo siguiente:
Pero esta consulta me esta regresando todas las filas de los pacientes con sus citas, de tal forma que se repite muchas veces un mismo id de paciente, es que paciente con cita tiene relacion 1 a N, y yo solo quiero que me regrese las mismas filas de mi primer consulta, pero agregando al select un campo de la tabla cita, ¿Como lo puedo hacer? :( |
ClNaU2 ;) |
Muchas gracias por tu respuesta!!
Pero... :( que crees? No funciona, me devuelve muchisimas mas filas, y repetidas. |
Perdón. Me acabo de dar cuenta que la consulta que yo puse es idéntica a la que tu pusiste arriba. Error mío.
Analizando tu cuestión en detalle, creo que no tiene solución. No puedes obtener un campo concreto de citas ya que el resultado de dicho campo podría no ser único. Por eso creo que la consulta que planteas 'lógicamente' no tiene solución. Al hacer un 'Distinct' del ID de tu tabla Citas, estás obteniendo un valor único, en este caso sí. Pero dicho ID, se corresponde de hecho con muchos registros diferentes de tu tabla citas, por lo que no se puede devolver un valor único para un campo concreto de citas que no sea el propio 'Distinct ID'. Espero haberme explicado correctamente y estar acertado en mi argumentación. :o |
Añado : Si tu crees que es lógicamente posible, expón un set de datos de ejemplo real que tengas, y podemos analizar la consulta sobre ese ejemplo.
|
Que raro... la propuesta de gluglu a mi me funciona correctamente
|
Yo mismo reconozco que no funciona :
Prueba con el siguiente Set de Datos : Código:
PACIENTES
me devuelve este resultado Código:
ID CAMPO1 CAMPO2 CAMPO3 |
Pues a mi si me funciona... :(:(:(
¿pero y si sacamos la condición del paciente, fuera de la consulta anidada?
|
Pues si, funciona.
Ok. Ahora sólo faltaría agrupar el resultado si se desea. Pero indendientemente de que funcione o no. Sigo con la misma pregunta: qué columna quieres obtener de la tabla 'citas' si la condición que impones puede devolver valores varios en las otras columnas de 'citas' que no estén incluidas dentro de la condición ? Por eso sigo pensando que la consulta propuesta no tiene sentido. |
Ahhhh, ya ya ya...
De verdad no tiene sentido la consulta, perdon :p Estaba queriendo obtener la fecha de la cita pero no se puedo, dado que son varias para un solo paciente. Muchisimas gracias por su respuesta, me han ayudado a entender, que mi problema, no era problema, jajajaja Gracias por su atencion y por su tiempo!! |
| La franja horaria es GMT +2. Ahora son las 01:49:43. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi