Selección de dos tablas en mySQL con corresponsales faltantes
para recuperar datos de dos tablas en mysql y manejar los casos en que no todas las filas en una tabla tienen rodajas correspondientes en la otra, puede utilizar una unión externa. Este enfoque difiere del método de unión implícito obsoleto y ofrece una mayor flexibilidad.
Considere el siguiente ejemplo:
tiene dos tablas, categorías (con ID de columnas y título) y productos (con columna ID, propietario, título y precio, donde el propietario de referencias ID en la tabla de categorías). Precios, agrupados por ID de categoría. Sin embargo, la consulta actual excluye las categorías sin productos correspondientes.
para resolver este problema, emplee una unión a la izquierda:
seleccione Carolina del Sur.*, Ifnull (min (s.price), 0) como minp, Ifnull (max (s.price), 0) como maxp De las categorías como SC Izquierda unir productos como S En S.Ownerid = sc.id Grupo por sc.id
SELECT sc.*, IFNULL(MIN(s.price), 0) AS minp, IFNULL(MAX(s.price), 0) AS maxp FROM categories AS sc LEFT JOIN products AS s ON s.ownerid = sc.id GROUP BY sc.id
Alternativamente, puede preferir devolver nulo para estas categorías en lugar de 0, dependiendo de sus requisitos específicos.
Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.
Copyright© 2022 湘ICP备2022001581号-3