Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General »

SQL, Necesito otra ayuda en la consulta

Estas en el tema de SQL, Necesito otra ayuda en la consulta en el foro de Bases de Datos General en Foros del Web. Hola gente.. Bueno, ayer me ayudaron con una consulta SQl.. Obtuve la solucion muy rapidamente gracias a uno de ustedes. Pense que con eso yo ...
  #1 (permalink)  
Antiguo 24/05/2009, 10:22
 
Fecha de Ingreso: marzo-2008
Mensajes: 49
Antigüedad: 16 años, 2 meses
Puntos: 0
SQL, Necesito otra ayuda en la consulta

Hola gente.. Bueno, ayer me ayudaron con una consulta SQl.. Obtuve la solucion muy rapidamente gracias a uno de ustedes. Pense que con eso yo podria continuar.. pero sigo necesitando de su ayuda

Las tablas eran estas
----Alumnos----------------------Materias---------------------------Ambas
----Alum_Codi------------------Mate_Codi------------------------Mate_Codi
-------------------------------------------------------------Alum_Codi

LA consulta que necesitaba era que seleccionara todas las materias que no esten en la tabla AMBAS por cada ALUMNO.

A lo que me sirvo esta consulta
Código:
SELECT t1.Alum_Codi, t1.Mate_Codi
FROM Ambas RIGHT JOIN [SELECT Alum_Codi, Mate_Codi FROM `alumnos`, materias]. AS t1 ON (T1.Mate_Codi = Ambas.Mate_Codi) AND (t1.Alum_Codi=Ambas.Alum_Codi)
WHERE Ambas.Alum_Codi IS NULL OR Ambas.Mate_Codi IS NULL
ORDER BY t1.Alum_Codi, t1.Mate_Codi;

Pero el tema es que en MATERIAS existe otro campo llamado Mat1_Codi, osea,
MATERIAS
materia1 - materia1
materia2 - materia2
materia3 - materia1

la consulta me sirve cuando el 2º campo es igual el 1º, osea para el primer y segundo caso..

Ahora necesito modificar la consulta para el tercer caso .
Que cuando el 2º campo sea distinto al 1º antes de seleccionarla verifique en la tabla AMBAS que la materia que esta en el 2º campo SI este en AMBAS y que el 1º campo de esa NO este.

Uhi espero q me entiendan.
Desde ya muchisimas gracias!
Besos
  #2 (permalink)  
Antiguo 24/05/2009, 10:46
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 16 años, 2 meses
Puntos: 300
Respuesta: SQL, Necesito otra ayuda en la consulta

la_pety0205;
primero debes explicarnos por qué usas dos campos en materia, qué significan cada uno de ellos, concretamente cuál es la diferencia entre Mat1_Codi y el ya usado Mate_Codi. Y eso con datos concretos. De esa manera, creo, podremos ayudarte mejor.
  #3 (permalink)  
Antiguo 24/05/2009, 11:21
 
Fecha de Ingreso: marzo-2008
Mensajes: 49
Antigüedad: 16 años, 2 meses
Puntos: 0
Respuesta: SQL, Necesito otra ayuda en la consulta

Uhi encima creo haberme equivocado en la explicacion...
Perdon!! perdon!!

el tema es asi...
en la tabla "materias" esta introduccion a la matematica, matematica , ingles 1, ingles2, quimica, fisica.. etc

en la tabla "ambas" estan las materias que ya tiene aprobadas un alumno.


En la tabla "correlatividades" ahi en realidad esta Mate_Codi y Mat1_Codi (perdon por la equivocacion)
Que ambos campos llamarian a Mate_Codi de MATERIAS

Ejemplo de correlatividades
introduccion a la matem - introduccion a la matem
matematica - introduccion a la matem
quimica - quimica
ingles1 - ingles1
ingles2 - ingles1


Supongamos que quimica no tiene correlativas entonces me la muestra para que el alumno se inscriba para rendir (considerando que no esta en "Ambas")
pero ahora matematica es correlativa con introduccion a la matematica
por lo tanto para poder inscribirse en matematica siendo que no la ha rendido(osea, q no esta en ambas), ya deberia tener aprobada introduccion, que esa si deberia estar en ambas


Siento que hago mas lio cuando explico.. perdon!







gracias nuevamente jurena
  #4 (permalink)  
Antiguo 24/05/2009, 12:10
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 16 años, 2 meses
Puntos: 300
Respuesta: SQL, Necesito otra ayuda en la consulta

¿y qué quieres sacar exactamente en la consulta, mirar si alguien desea matricularse en una asignatura y puede hacerlo o no por tener aprobada la anterior?, ¿es eso?
  #5 (permalink)  
Antiguo 24/05/2009, 12:39
 
Fecha de Ingreso: marzo-2008
Mensajes: 49
Antigüedad: 16 años, 2 meses
Puntos: 0
Respuesta: SQL, Necesito otra ayuda en la consulta

Si... exacto. Si mate_Codi = mat1_Codi significa q no tiene correlativas y si no se ha matriculado pues q lo haga...
y si mate_codi <> de mat1_codi.. significa que si tiene correlativas, entonces si no esta matriculado, para matricularse primero tiene que tener aprobada mat1_codi
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:18.