¿Puedo tener una columna en mi mesa de valores (valor) que se hace referencia como una clave externa a la tabla knownValues, y deja que sea NULL siempre que sea necesario, como en el ejemplo:Las claves externas y NULL en MySQL
Tabla: valores
product type value freevalue
0 1 NULL 100
1 2 NULL 25
3 3 1 NULL
Tabla: tipos
id name prefix
0 length cm
1 weight kg
2 fruit NULL
Tabla: knownValues
id Type name
0 2 banana
Nota: Los tipos en la tabla values
& knownValues
están, por supuesto, referenciados en la tabla types
.
El uso de INNER join o algún tipo de unión EXTERIOR depende de los resultados que está buscando. Hay momentos en que una unión INNER da exactamente la respuesta deseada. –
Sí, y en los casos en que tenga filas con valores NULL en FK, no encontrará * todas * filas con una combinación interna; pero con una combinación externa. –
¿algún ejemplo? Esto no funciona para mí usando InnoDB Storage Engine - MySQL – dev