problema con consulta sql
hola a todos, bueno mi problema es que necesito hacer una consulta, y estas son mis tablas
ALUMNOS:NRO_ALUM,APYNOM. MATERIAS:COD_MAT,NOMBRE,AÑO. NOTAS:COD_ALUM,COD_MAT,NOTA,FECHA. bien, lo que me pide la consulta es listar los nombres de los alumnos que aprobaron finales bueno, utilizo en un form un dbgrid para mostrar el resultado,un tquery y en un tbutton intriduzco la consulta esta: query1.SQL.Clear; query1.SQL.add('select n.nota,a.apellido_nombre from notas as n'); query1.SQL.Add('inner join alumnos as a on (n.cod_alumno = a.cod_alumno) and (n.nota > 4)'); query1.Active:=true; query1.Open; el problema que me salta es: type mismatch in expression.' no se que puede ser, el campo nota esta bien escrito, y si borro la parte de (n.nota > 4) me muestra el resultado sin problemas, que podria ser el error ? gracais |
Si no me he equivocado y el aprobado es una nota mayor de 4, entonces debe ser algo así:
|
consultas sql
hola, no lo he probado pero solo me interesa saber las notas, no el nombre de las materias, me funciona bien si saco la parte de : n.nota>4. pero cuando lo coloco me tira ese error. los campos estan bien relacionados.
PERDON, ERA MI ERROR QUE EL CAMPO NOTA ESTABA COMO ALFANUMERICO, POR LO TANTO SERIA N.NOTA>"4" GRACIAS IGUALMENTE |
Bueno, pues no pongas la materia:
|
problema con consulta sql
hola amigos, miren tengo una consulta q no me sale
tengo 3 tablas : ALUMNOS: COD_ALUM, APE_NOMBRE NOTAS: COD_ALUM,COD_MATERIA,FECHA,NOTA (COD_ALUM,COD_MATERIA Y FECHA SON PKEY) MATERIAS:COD_MATERIA,NOMBRE,AÑO BIEN AHORA QUIERO SABER LOS ALUMNOS QUE APROBARON FINALES, PERO UN ALUMNO TIENE UN 2 EN UNA MATERIA Y UN 8 EN OTRA EN DISTINTA FECHA YO EN LA CONSULTA PONGO= SELECT A.APE_NOMBRE,N.NOTA FROM NOTA AS N INNER JOIN ALUMNOS AS A ON (A.COD_ALUM=N.COD_ALUM) AND (NOTA>"4") BIEN AHORA NO ME MUESTRA EL ALUMNO QUE SE SACO UN 2 EN UNA Y UN 8 EN OTRA YA QUE AL PARECER LO CONDICIONA EL 2 COMO PODRIA HACER , YA QUE APROBO UN FINAL Y LO TENDRIA QUE MOSTRAR, YA PROBE CON DISTINCT Y TAMPOCO SALIO |
Por favor, continúa en el otro hilo que iniciaste sobre este tema, gracias.
p.d.: voy a unir ambos hilos. |
Cita:
Los inner permiten obtener todos los alumnos con sus respectivas notas de todas las materias. el having comprueba que apruebe las materias (tomando en cuenta que la materia se aprueba con calificaciones mayores a 5, y en este ejemplo que son solo dos materias).:cool: |
La franja horaria es GMT +2. Ahora son las 02:35:19. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi