Tengo 2 tablas:2 Seleccione o 1 consulta de unión?
libro (ID, título, edad) ----> 100 milions de filas
autor (id, book_id, nombre, nació) ----> 10 millones de filas
Ahora, supongo que tengo una identificación genérica de un libro. Necesito imprimir esta página:
Title: mybook
authors: Tom, Graham, Luis, Clarke, George
Entonces ... ¿cuál es la mejor manera de hacer esto?
1) se unen a simple como esto:
Select book.title, author.name
From book, author
WHERE (author.book_id = book.id) AND (book.id = 342)
2) Para evitar la unión, que podría hacer 2 consulta sencilla:
Select title FROM book WHERE id = 342
Select name FROM author WHERE book_id = 342
¿Cuál es la manera más eficiente?
La base de datos no contrae las filas en una lista separada por comas, el cliente presumiblemente con algún lenguaje de scripting. –
@Evan - Se puede hacer con GROUP_CONCAT o similar. –
No dije que no podría hacerse. Solo quise dar a entender que no se está haciendo y que es externo a la pregunta. –