Inner join pero que sólo tome 1 fila de la tabla “hija”

25/11/2004 - 15:25 por CLAUDIO | Informe spam
Necesito hacer una Inner join entre 2 tablas pero que tome SIEMPRE 1 sola
fila de la tabla hija.

Tengo por ejemplo esta query:

select *
from facturas fac
INNER JOIN Movim_facturas mov ON (fac.COD_FACTURA = mov.COD_FACTURA)

El problema que tengo con esta query es que si tengo por ejemplo COD_FACTURA
de la tabla Facturas = 5 y tengo 3 registros en la tabla Movim_facturas con
COD_FACTURA = 5, entonces me devuelve 3 registros cuando yo quiero que me
devuelva sólo 1 (me da igual cual de los 3 me devuelva)

Se puede hacer sin tener que hacer Group by?
Cual es la mejor manera para que me devuelva sólo 1 registro por cada
COD_FACTURA de Factura?
 

Leer las respuestas

#1 Maxi
25/11/2004 - 15:32 | Informe spam
Hola, una forma es un Group by o sino usar TOP 1


Salu2
Maxi


"CLAUDIO" escribió en el mensaje
news:
Necesito hacer una Inner join entre 2 tablas pero que tome SIEMPRE 1 sola
fila de la tabla hija.

Tengo por ejemplo esta query:

select *
from facturas fac
INNER JOIN Movim_facturas mov ON (fac.COD_FACTURA = mov.COD_FACTURA)

El problema que tengo con esta query es que si tengo por ejemplo
COD_FACTURA
de la tabla Facturas = 5 y tengo 3 registros en la tabla Movim_facturas
con
COD_FACTURA = 5, entonces me devuelve 3 registros cuando yo quiero que me
devuelva sólo 1 (me da igual cual de los 3 me devuelva)

Se puede hacer sin tener que hacer Group by?
Cual es la mejor manera para que me devuelva sólo 1 registro por cada
COD_FACTURA de Factura?

Preguntas similares