[ayuda] problema con consulta en sql

Tema en 'Casos Resueltos Informáticos' iniciado por cavoso, 7 Feb 2013.

Estado del Tema:
Cerrado para nuevas respuestas
  1. cavoso

    cavoso Usuario Casual nvl. 2
    197/244

    Registrado:
    31 May 2008
    Mensajes:
    2.792
    Me Gusta recibidos:
    14
    que tal portaleanos, les cuento tengo un servidor de base de datos de mssql (sql de microsoft) y estoy haciendo un programa en visual basic 2008, el tema es que tengo una consulta con inner join dentro de la cual consulto datos como subconsultas, algo mas o menos asi

    select a.item, a.cantidad,
    (SELECT nombre from clasifi where id=a.clasificacion) 'clasificacion',
    b.ubicacion

    from tabla1 a INNER JOIN tabla2 b ON a.item=b.item

    esto es un ejemplo simple de lo que tengo xD, porque consulto mas de 24 datos en la misma consulta, condicionandolo en base a las selecciones en el programa, ahora el tema es que quiero condicionarla por la clasificacion (en este caso) y he ahi donde no tengo idea como hacer, si me dicen que lo aga atraves del programa ya se como hacer eso, pero no es mi idea ya que tendria que crear algunas funciones solo para hacer eso y me complicaria mas, si alguien sabe si se puede hacer se lo agradeceria un monton.
     
  2. El Fin

    El Fin Usuario Habitual nvl.3 ★
    187/244

    Registrado:
    2 Oct 2009
    Mensajes:
    16.665
    Me Gusta recibidos:
    16
    Hay algo que no entiendo de la query que pusiste, yo tengo entendido que la instrucción que está dentro del paréntesis devuelve una tabla como resultado pero estás usando esa salida como si fuera una columna. Al menos en el sqlite me dice que es incorrecto.

    Una aplicación correcta del paréntesis sería:

    select * from (select * from ramos where id>10) where id<15

    esto se traduce en:
    buscar todos los registros de la tabla ramos donde el id sea mayor a 10,
    Del resultado de esa consulta, seleccionar los registros menores a 15

    Ahora, como Microsoft tiene fama de salirse de los estándares para meter a la fuerza los suyos propios........

    El JOIN es un tema distinto porque existe 3 tipos: El INNER normal (que es básicamente la intersección de tablas en un punto determinado), LEFT JOIN (usar todos los registros de la tabla de la izquierda y completar con la info de la tabla de la derecha) y el RIGHT JOIN que es lo mismo que el LEFT pero al revez.

    Cada join tiene su uso distinto. Saludos.
     
  3. cavoso

    cavoso Usuario Casual nvl. 2
    37/41

    Registrado:
    31 May 2008
    Mensajes:
    2.792
    Me Gusta recibidos:
    14
    bueno te explico la sentencia que esta ahi no es incorrecta solo que el sqlite no la soporta, es todo, porque la he echo en mysql y en mssql y no no devuelve una tabla solo devuelve los registros que cumplen la condicion, en dicho caso es solo 1 por lo que solo entrega el valor que pido, pero el tema esta en que quiero consultar un dato en especifico de esa subconsulta sin tener que rehacer toda la consulta solo para eso ya que estoy actualmente procesando todos los datos en una sola parte, y condicionandolo en base a los parametros que se entregan por la aplicacion, cuando me den ganas de volver a hacer videotutoriales de programacion les muestro un poco de visual
     
  4. cavoso

    cavoso Usuario Casual nvl. 2
    37/41

    Registrado:
    31 May 2008
    Mensajes:
    2.792
    Me Gusta recibidos:
    14
    bueno estimados ya solucione el problema, para que lo cierren la verdad es que me funciono como habia pensado xD, raro porque ya habia probado hacerlo de esa forma pero luego de revisar el codigo unas cuantas veces me funciono xD
     
  5. El Fin

    El Fin Usuario Habitual nvl.3 ★
    187/244

    Registrado:
    2 Oct 2009
    Mensajes:
    16.665
    Me Gusta recibidos:
    16
    Te faltó apretar más veces el F5 xd.

    Saludos.!
     
  6. cavoso

    cavoso Usuario Casual nvl. 2
    37/41

    Registrado:
    31 May 2008
    Mensajes:
    2.792
    Me Gusta recibidos:
    14
    hahahah xD no es por web, sino que por programa, xD
     
  7. Aguil@

    Aguil@ Usuario Habitual nvl.3 ★
    197/244

    Registrado:
    10 Oct 2007
    Mensajes:
    14.337
    Me Gusta recibidos:
    38
    jajjaaj a veces da la impresion que los problemas se "solucionan solos" ... saludos!
     
  8. El Fin

    El Fin Usuario Habitual nvl.3 ★
    187/244

    Registrado:
    2 Oct 2009
    Mensajes:
    16.665
    Me Gusta recibidos:
    16
    Eso me pasaba cuando programaba en c++, menos mal que nunca más tuve que volver a usarlo.

    Saludos.
     
  9. cavoso

    cavoso Usuario Casual nvl. 2
    37/41

    Registrado:
    31 May 2008
    Mensajes:
    2.792
    Me Gusta recibidos:
    14
    hahaha xD pues yo programo en visual basic, asp y php imaginate en como me quedan los codigos donde cambio de un codigo a otro xD
     
Estado del Tema:
Cerrado para nuevas respuestas