none
Consulta con UNION que devuelva campo con nombre de tabla desde donde obtiene los datos RRS feed

  • Pregunta

  • hola

    Tengo esta consulta 

    Select  nombre , codigo from tabla1  where  id =@numero UNION  Select  nombre , codigo from tabla2 where  id =@numero

    nesecito que me devuelva  algo asi

    juan , xrt456 , tabla1       .... intente  esto  :

    Select  nombre , codigo , 'tabla1' as T from tabla1  where  id =@numero UNION  Select  nombre , codigo,  'tabla2' as T from tabla2 where  id =@numero

    pero siempre me devuelve tabla1 asi los datos los jale de tabla2 ya verifique 

     


    EFRAIN MEJIAS C VALENCIA - VENEZUELA

    martes, 11 de agosto de 2015 2:28

Respuestas

  • hola

    pero cuando ejecutas ese query cuantos registros obtienes ?

    si me dices solo uno entonces esta claro que el numero de id que proporcionas por parametros solo se encuentra en la primer tabla

    ahora si obtienes dos la verdad es raro

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    martes, 11 de agosto de 2015 3:33
  • Hola Efrain Mejias Castillo,

    No tiene lógica el resultado que obtienes, lo que podría estar pasando es que no existan datos en tabla2 que coincida con el valor de la variable @numero.

    Select  nombre , codigo , 'tabla1' as T from tabla1  where  id =@numero UNION  Select  'nombre' , 'codigo',  'tabla2' as T from tabla2 where id=@numero

    Si ejecutas esa consulta sólo debería salirte los registros de la tabla1, de ser así es porque no tienes registros en tabla2 que coincida con la evaluación

    martes, 11 de agosto de 2015 3:33

Todas las respuestas

  • hola

    pero cuando ejecutas ese query cuantos registros obtienes ?

    si me dices solo uno entonces esta claro que el numero de id que proporcionas por parametros solo se encuentra en la primer tabla

    ahora si obtienes dos la verdad es raro

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    martes, 11 de agosto de 2015 3:33
  • Hola Efrain Mejias Castillo,

    No tiene lógica el resultado que obtienes, lo que podría estar pasando es que no existan datos en tabla2 que coincida con el valor de la variable @numero.

    Select  nombre , codigo , 'tabla1' as T from tabla1  where  id =@numero UNION  Select  'nombre' , 'codigo',  'tabla2' as T from tabla2 where id=@numero

    Si ejecutas esa consulta sólo debería salirte los registros de la tabla1, de ser así es porque no tienes registros en tabla2 que coincida con la evaluación

    martes, 11 de agosto de 2015 3:33