Hola amigos, como puedo hacer este select pero dinamico, osea los optgroup los saca de la bd, y los option tb, los opt tienen un padre q es el optgroup 
mi tabla es la siguiente 
CODIGO | NOMBRE | PADRE
nombre es option y padre es optgroup 
gracias por todo.