Tengo dos mesas, L
y R
.
Quiero tener un Left Outer join
Entre L
con cada grupo de filas en R
.
Más claramente, todas las filas en la tabla de la izquierda, deben estar en el conjunto de resultados para cada grupo de filas de la derecha.
¿Cuál es la mejor consulta en SQL?
Respuestas
0 para la respuesta № 1Lo resuelvo por CROSS JOIN
operador.
Mi consulta: declare @userid int set @userid = null
SELECT T.Id, T.Name,T.UserId,R.Val
FROM
(
SELECT L.Id, L.Name,R.UserId
FROM
(SELECT DISTINCT UserId FROM R ) R
CROSS JOIN L
)T
LEFT OUTER JOIN R
ON (T.Id = R.DayId AND T.UserId = R.UserId)
where @userid is null or T.userid=@userid