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

sentencia SQL en mysql

Estas en el tema de sentencia SQL en mysql en el foro de Bases de Datos General en Foros del Web. no se puede hacer esto en vbscript o el tema es mysql?? SELECT IDmodelo FROM modelos WHERE IDmarca IN (SELECT IDmarca FROM marcas WHERE IDmarca ...
  #1 (permalink)  
Antiguo 10/04/2005, 11:03
Avatar de dieguicho  
Fecha de Ingreso: noviembre-2001
Ubicación: Buenos Aires
Mensajes: 1.190
Antigüedad: 22 años, 5 meses
Puntos: 1
sentencia SQL en mysql

no se puede hacer esto en vbscript o el tema es mysql??

SELECT IDmodelo FROM modelos WHERE IDmarca IN (SELECT IDmarca FROM marcas WHERE IDmarca > 1)
__________________
On error no hago nada porque deje de fumar...

Última edición por g_susdaniel; 10/04/2005 a las 17:06 Razón: el titulo decia mysql + asp . pero asp ?
  #2 (permalink)  
Antiguo 10/04/2005, 13:49
Avatar de Muzztein  
Fecha de Ingreso: agosto-2002
Ubicación: Hangar 18
Mensajes: 1.703
Antigüedad: 21 años, 8 meses
Puntos: 16
eso es SQL estandar valido.

ahora con my sql no se.

pero de que sea culpa de vbscript, no lo es.
Obviamente debe ser tema del my sql.
  #3 (permalink)  
Antiguo 10/04/2005, 21:29
 
Fecha de Ingreso: julio-2003
Ubicación: Colombia
Mensajes: 591
Antigüedad: 20 años, 9 meses
Puntos: 7
sip, es correcto yo lo he hecho en Mysql y funciona bien....

Chaop!
  #4 (permalink)  
Antiguo 11/04/2005, 13:47
Avatar de dieguicho  
Fecha de Ingreso: noviembre-2001
Ubicación: Buenos Aires
Mensajes: 1.190
Antigüedad: 22 años, 5 meses
Puntos: 1
ya me superaaaa
miren esto

Código PHP:
SELECT fotos.IDfotofotos.IDalbum  FROM fotos  WHERE IDalbum IN (SELECT albums.IDalbum FROM albums WHERE IDalbum 0
me devuelve

[200.123.133.98] ERROR 1064: 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 'SELECT albums.IDalbum FROM albums WHERE IDalbum > 0)' at line 1

cambie de base de datos para ver si no era la definicion de los campos o algo asi
se las cuento x las dudas

albums
======
idalbum, int, auto_increment
nombre, varchar

fotos
=====
IDfoto, int, auto_increment
nombre, varchar

que puede ser entonces??
__________________
On error no hago nada porque deje de fumar...
  #5 (permalink)  
Antiguo 11/04/2005, 14:57
Avatar de sir_joshua  
Fecha de Ingreso: diciembre-2004
Mensajes: 411
Antigüedad: 19 años, 4 meses
Puntos: 0
haber prueba esto:
SELECT IDfoto, IDalbum FROM fotos WHERE IDalbum IN (SELECT IDalbum FROM albums WHERE IDalbum > 0)

aunke nose cual campo liga ambas tablas, en tu query es IDalbum, pero segun el esquema de tus tablas no existe liga.
  #6 (permalink)  
Antiguo 12/04/2005, 01:42
Avatar de Vice  
Fecha de Ingreso: agosto-2003
Mensajes: 613
Antigüedad: 20 años, 9 meses
Puntos: 2
Muchas veces se intentan hacer cosas con subqueries que se pueden hacer con join, y este parece ser uno de estos casos:
Código:
SELECT IDmodelo FROM modelos join marcas on modelos.idmarca=marcas.idmarca
WHERE marcas.IDmarca > 1
En mysql hay que tener en cuenta que las subqueries sólo se admiten desde la versión 4.1. En las anteriores arroja el error puesto por Dieguicho.
Un saludo.
__________________
Estoy contagiado de Generación-I
  #7 (permalink)  
Antiguo 12/04/2005, 09:13
Avatar de dieguicho  
Fecha de Ingreso: noviembre-2001
Ubicación: Buenos Aires
Mensajes: 1.190
Antigüedad: 22 años, 5 meses
Puntos: 1
mmm Vice la version es 5.0.0 sobre windows.
puede ser ese el problema? sigue sin poder ejecutarse la consulta que envio sir_joshua
__________________
On error no hago nada porque deje de fumar...
  #8 (permalink)  
Antiguo 12/04/2005, 10:01
Avatar de Vice  
Fecha de Ingreso: agosto-2003
Mensajes: 613
Antigüedad: 20 años, 9 meses
Puntos: 2
No sé que decirte. La versión 5.0 es beta, con lo que pueden aparecer cosas no esperadas.
Por otro lado, lo que tu quieres se puede hacer mediante un join, no necesitas una subquerie:
Código:
SELECT fotos.IDfoto, fotos.IDalbum  
FROM fotos join albums on fotos.idalbum = albums.idalbum
WHERE albums.IDalbum > 0
Un saludo.
__________________
Estoy contagiado de Generación-I
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 13:30.