/ / Learning LEFT JOIN en MySQL - mysql, left-join

Aprender LEFT JOIN en MySQL - mysql, left-join

Querido All.i Newbie en programación web y hasta ahora todavía tengo que aprender sobre la sintaxis de MySQL. por ahora empiezo a usar LEFT JOIN método. Sé que este método se utiliza para realizar la normalización entre dos o muchas tablas. He publicado una pregunta en SO, luego recibo una Responder que me hacen confundir. He modificado esa respuesta, pero sigo confundiendo porque uso LEFT JOIN Sólo para una mesa. si el LEFT JOIN ¿Se puede usar en una mesa?

Respuestas

4 para la respuesta № 1

Usted puede LEFT JOIN Una mesa con ella misma, al igual que tú. JOIN Una mesa consigo misma. Su propósito será generalmente diferente, porque la característica específica de un LEFT JOIN es asegurar una fila en la salida cuando no existe una fila correspondiente a la derecha, por supuesto; puede seleccionar las filas que se han seleccionado específicamente de esa manera al verificar NULL para la "otra parte" de la fila, la parte que normalmente vendría de la tabla del lado derecho.

Consideremos por ejemplo una tabla Product con columnas ID, Clave primaria, Name, Categoryy Cost; Desea información sobre los productos que son más baratos en su categoría. Entonces...:

SELECT P1.Name, P1.Category, P1.Cost
FROM Product AS P1
LEFT JOIN Product AS P2
ON (P1.Category = P2.Category and P1.Cost > P2.Cost)
WHERE P2.ID IS NULL

es un ejemplo de una "combinación izquierda de una tabla paraa sí mismo ", que responderá a la especificación" que desea "(si más de un artículo tiene el costo más bajo en una categoría, obtendrá todos ellos; la consulta le brinda los elementos de tal manera que ningún elemento de su categoría es mas barato y no tiene cheques para artículos de igual costo;-).