Retroceder   Foros del Web > Programación para sitios web > Bases de Datos > Mysql

Respuesta
 
Herramientas Desplegado
Antiguo 28-mar-2008, 13:59   #1 (permalink)
davidg90 ha deshabilitado el karma
 
Fecha de Ingreso: marzo-2008
Mensajes: 1
Exclamación Problema con "Inner Join"

Buenas a todos! Este es mi primer post. Estoy haciendo un curso de PHP (www.phpya.com.ar para el que este interesado, de excelente nivel y muy didáctico) y llegado al capítulo 26, se me pide primero que arme un formulario donde el usuario ingrese un ID numerico para identificar a un alumno y acto seguido que escriba un programa que utilizando la función "inner join" muestre en pantalla los datos del alumno o retorne un string avisando de que no existe un alumno con ese ID.

Las tablas son 2, una se llama "cursos" y la otra "alumnos".

La tabla "cursos" consta de 2 campos:
"nombrecur" (varchar donde se aloja el nombre del curso)
"codigo" (un integer con auto_increment que identifica con un numero a cada curso)

La tabla "alumnos" consta de 4 campos:
"codigo" (un integer con auto_incremente que identifica con un numero a cada alumno)
"nombre" (un varchar que aloja el nombre de cada alumno)
"mail" (un varchar que aloja la direccion de e-mail de cada alumno)
"codigocur" (un integer que aloja el codigo del curso en el que esta anotado el alumno).

El código empleado por mí es este:
$registros=mysqli_query($conexion, "select alu.codigo as codigo, nombre, mail, codigocurso, nombrecur
from alumnos as alu where alu.codigo='$_REQUEST[codigoalu]'

/* Con el $_REQUEST[codigoalu] guardo los datos que ingrese en el "input text" del formulario anterior, el cual pide el codigo del alumno para identificarlo dentro de la base de datos y mostrar sus especificaciones */

inner join cursos as cur on cur.codigo=alu.codigocurso")


El error que recibo es el siguiente:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'inner join cursos as cur on cur.codigo=alu.codigocurso' at line 3

Espero haber sido lo suficientemente claro. Ojala alguien encuentre una respuesta para este problema. Aclaro que pongo "mysqli_..." en lugar de "mysql_..." debido a que uso WAMPServer 5 y si no hago eso no funciona.

Un gran abrazo!
David
davidg90 está desconectado   Responder Citando
Antiguo 31-mar-2008, 05:51   #2 (permalink)
vtg
vtg ha deshabilitado el karma
 
Fecha de Ingreso: marzo-2008
Mensajes: 14
Re: Problema con "Inner Join"

Hola David, yo realmente no soy muy experta en esto pero creo que la sintaxis de la sentencia no es correcta, yo lo que haria seria algo asi:

Select codigo, nombre, mail, codigocurso from alumnos A inner join cursos C on
A.codigocur=C.codigo where A.codigo= ;

En el select los atributos que te devuelve son los de la primera tabla mencionada en el from, en el On se pone el atributo que tienen en comun las dos tablas y en el where lo que kieras comprobar.

Espero que te ayude
un saludo
vtg está desconectado   Responder Citando
Respuesta

No hay votos aún.


Herramientas
Desplegado

Normas de Publicación
No puedes crear nuevos temas
No puedes responder temas
No puedes subir archivos adjuntos
No puedes editar tus mensajes

BB code is Activado
Caritas están Activado
[IMG] está Activado
Código HTML está Desactivado


La Zona horaria es GMT -6. Ahora son las 15:31.


Message Board Statistics

LinkBacks Enabled by vBSEO 3.1.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93