Las subconsultas en SQL son algo muy práctico, y que permiten resolver algunos pequeños problemas de manera muy simple.
Por ejemplo, hace tiempo estaba trabajando en un programa que requeria agregar determinadas filas a unas tablas para el manejo de los accesos de los usuarios. Se tenia una tabla donde estaban todos los links de los modulos del programa y otro que controlaba que nivel tenia cada links, por defecto el nivel 1 administrador tiene todos los links.
Al crear un nuevo registro en la tabla de links, se debia insertar un registro en la tabla de niveles, de manera que este pudiera acceder. Esto se soluciono de esta forma:
INSERT INTO `link` (`menu_id`, `nombre`, `url`) VALUES ('7', 'Proceso', 'proceso.php');
INSERT INTO `nivel_item` (`nivel_id`, `item_id`) VALUES ('1', (SELECT item_id FROM item WHERE action='Proceso' ));
De esta manera nos despreocupamos de que id autonumerico, pueda llegar a tomar el registro de link que agregamos.
No hay comentarios:
Publicar un comentario