

ISC. Juan Arturo Ortegon Lemus
Subselect MySQL
se crearon las siguientes tablas: book, publisher, autores y book2 que no tiene registros.
se nos presenta una problematica donde queremos saber cual es el autor mas joven de todos.
Tabla autores Tabla Book Tabla Publisher



Tabla book2

en simple vista podemos darnos cuenta que el autor mas joven es Eli en la tabla autor. con un subselect encontrariamos al autor mas joven si en casa de tener millones de registros y no estar buscando 1 por 1....
a continuacion se usa un max ya que el que tenga el año mas grande sera el mas joven y se usa un select a dentro de otro

se quiere resolver la problematica de tener una lista de los libros de los autores mas reconocidos para eso se utilizara la tabla autores y book se utiliza un IN para indicar los registros dentro de la tabla autores.

Autores Reconocidos:

Ahora se busca que todos los registros de los libros de los autores mas reconocidos los insertemos en la tabla book2. para eso solo se agregaria la sentencia INSER INTO a continuacion:
insert into book2
SELECT * FROM book where autor in(select name from autores)

Por ultimo...

a cotinuacion se explicara la sentencia...

update book2 b set autor= concat (autor,'-',) hasta aqui se modificara la tabla book2 la columna autor sera igual a el autor- y despues Select name from publisher p where p. idpublisher=b.idpublisher en esta sentencia se selecciona el nombre de la editorial de la tabla publisher donde sea igual el numero de idpublisher de la tabla publisher a la de book.
