Cita: La web tiene un buscador de productos, el usuario busca supongamos por algun atributo que se encuentra en "Products" o algun otro que se encuentra tanto en Food como en Drinks. Entonces necesitamos mostrar los resultados de los dos, de Food y de Drinks.
Este tipo de búsqueda sólo puede hacerse sobre los campos comunes, y allí se puede resoler el problema sin necesidad de recurrir a agregar campos adicionales a las tablas:
Código MySQL:
Ver originalSELECT P.
*, F.ingredients
, F.price
, 'Food' `TipoDetalle` WHERE p.product_id
< 11UNION
SELECT P.
*, F.ingredients
, F.price
, 'Drink' `TipoDetalle`
Cualquier campo agregado hará que devuelva NULL en esa columna.