Hoja de ejercicios de Bases de datos y SQL con soluciones
Hoja de ejercicios de Bases de datos y SQL gratis e imprimible: 8 problemas desde nivel fácil hasta nivel de examen, con soluciones. Imprímela o guárdala como PDF.
Para docentes: pueden imprimirla, copiarla y usarla en clase gratis. Cada hoja nueva tiene valores nuevos y su propia clave de respuestas. Agradecemos un enlace a ExamProblems en la página de tu curso.
Nombre: ____________________ Fecha: ____________
1.Fácil
¿Qué sentencia SQL añade filas nuevas a una tabla?
- AINSERT
- BSELECT
- CUPDATE
- DALTER
2.Fácil
GRANT y REVOKE pertenecen a ¿qué parte de SQL?
- ALenguaje de manipulación de datos (DML)
- BLenguaje de control de datos (DCL)
- CLenguaje de definición de datos (DDL)
- DLenguaje de consulta de datos (DQL)
3.Fácil
En un patrón LIKE, ¿qué representa el comodín _ (guion bajo)?
- ACualquier letra, pero ningún dígito
- BUn carácter de espacio
- CExactamente un carácter
- DCero o más caracteres
4.Media
¿Qué consulta muestra los clientes que nunca han hecho un pedido?
- ASELECT c.name FROM customers c LEFT JOIN orders o ON o.customer_id = c.id WHERE o.id IS NULL
- BSELECT c.name FROM customers c INNER JOIN orders o ON o.customer_id = c.id WHERE o.id IS NULL
- CSELECT c.name FROM customers c LEFT JOIN orders o ON o.customer_id = c.id WHERE o.id = NULL
- DSELECT c.name FROM customers c LEFT JOIN orders o ON o.customer_id = c.id WHERE o.id IS NOT NULL
5.Media
¿Qué consulta devuelve el número de pedidos por cliente?
- ASELECT customer_id, COUNT(*) FROM orders GROUP BY customer_id
- BSELECT customer_id, COUNT(*) FROM orders ORDER BY customer_id
- CSELECT DISTINCT COUNT(*) FROM orders
- DSELECT customer_id FROM orders WHERE COUNT(*) > 0
6.Media
Una clave foránea se declara con ON DELETE CASCADE. ¿Qué ocurre cuando se elimina una fila padre?
- ALa fila padre se copia en una tabla de archivo
- BLa eliminación se rechaza siempre
- CLas filas hijas que la referencian se eliminan automáticamente
- DLa clave foránea de las filas hijas se pone automáticamente a NULL
7.Difícil
Una tabla tiene un millón de filas y una columna booleana is_active que es TRUE en el 95% de ellas. ¿Por qué podría el optimizador ignorar un índice sobre is_active para WHERE is_active = TRUE?
- AEl optimizador nunca usa índices en las cláusulas WHERE
- BEl índice trata TRUE como NULL
- CNo se pueden crear índices sobre columnas booleanas
- DLa mayoría de las filas coinciden, así que un recorrido completo de la tabla es más barato que muchas búsquedas en el índice
8.Difícil
La forma normal de Boyce-Codd (FNBC) exige que, para toda dependencia funcional no trivial X → Y:
- AY sea una clave primaria
- BX contenga NULL
- CX sea una superclave
- DY sea atómico