Cuestiones
ayuda
option
Mi Daypo

TEST BORRADO, QUIZÁS LE INTERESEBase de datos consultas

COMENTARIOS ESTADÍSTICAS RÉCORDS
REALIZAR TEST
Título del test:
Base de datos consultas

Descripción:
Un test sobre consultas

Autor:
ketop
(Otros tests del mismo autor)

Fecha de Creación:
07/03/2024

Categoría:
Informática

Número preguntas: 20
Comparte el test:
Facebook
Twitter
Whatsapp
Comparte el test:
Facebook
Twitter
Whatsapp
Últimos Comentarios
No hay ningún comentario sobre este test.
Temario:
La consulta select * from articulo where articulo.id in (select pedido.id_articulo from pedido where year(fecha) = 2019); 1. Se puede reescribir utilizando un "= any" en lugar del "in" 2. Se puede reescribir utilizando un "<> any" en lugar del "in" 3. Se puede reescribir utilizando una reunión interna (inner join) en lugar del "in" 4. Se puede reescribir utilizando un "=all" en lugar del "in" La 3 es verdadera y las demás falsas La 4 es verdadera y las demás falsas La 3 y la 4 son verdaderas y las demás falsas La 1 y 3 son verdaderas y las demás falsas.
select c1, c2, c3, avg(c3) from tabla1 group by c1; Segun SQL99 1. Error porque en el select no puede aparecer c2. 2. Error porque en el select no puede aparecer c3. 3. Error porque faltaría una claúsula having. 4. Error porque en el select no puede aparecer avg(c3) La 3 es verdadera y las demás falsas Todas son falsas La 1 y la 2 son verdaderas y las demás falsas La 4 es verdadera y las demás falsas.
select count(*) from tabla1 natural join tabla2; 1. Si tabla1 tiene 3 registros y tabla2 tiene 5 registros devolverá siempre 15 registros. 2. Si tabla1 tiene 5 registros y tabla2 tiene 3 registros devolverá siempre 15 registros. 3. Solo se recomienda en caso que todos los campos que se llamen igual en tabla1 y tabla2 sean por los que se desee hacer la reunión. 4. Esta consulta sería equivalente a tabla1 inner join tabla2 on tabla1.a=tabla2.a (en caso de que a sea el único campo que se llame igual en tabla1 y tabla2) La 3 y la 4 son verdaderas y las demás falsas Todas son falsas La 1 y la 2 son verdaderas y las demás falsas. Todas son verdaderas.
select c1, c2, c3, avg(c3) from tabla1 group by c1; Segun SQL92 1. Error porque en el select no puede aparecer c2. 2. Error porque en el select no puede aparecer c3. 3. Error porque faltaría una claúsula having. 4. Error porque en el select no puede aparecer avg(c3). Todas son verdaderas La 1 y la 2 son verdaderas y las demás falsas La 2 y la 3 son verdaderas y las demás falsas La 3 y la 4 son verdaderas y las demás falsas.
select a, b, c from tabla1 inner join tabla2 on tabla1.b=tabla2.c; 1. Si la tabla1 tiene 10 registros y la tabla2 5 registros, devolverá siempre 50 registros. 2. Si la tabla1 tiene 5 registros y la tabla2 10 registros, devolverá siempre 50 registros. 3. El campo a ha de existir en tabla1. 4. El campo a ha de existir en tabla2. Todas son verdaderas La 1 y la 2 son verdaderas y las demás falsas. Todas son falsas La 3 y la 4 son verdaderas y las demás falsas.
La consulta select * from articulo where articulo.id not in (select pedido.id_articulo from pedido where year(fecha) = 2019); 1. Se puede reescribir utilizando un "= any" en lugar del "not in" 2. Se puede reescribir utilizando un "!= any" en lugar del "not in" 3. Se puede reescribir utilizando un "= all" en lugar del "not in" 4. Se puede reescribir utilizando un "!=all" en lugar del "not in" La 2 es verdadera y las demás falsas La 1 y la 2 son verdaderas y las demás falsas La 2 y la 4 son verdaderas y las demás falsas La 4 es verdadera y las demás falsas.
select a, b, c from tabla1, tabla2, tabla3; 1. Si tabla1 tiene 2 registros, tabla2 3 registros y tabla3 2 registros, devolverá siempre 12 registros. 2. Los campos a, b y c han de estar al menos en una de las tablas. 3. Los campos a, b y c han de estar obligatoriamente en todas las tablas. 4. Esta consulta en ningún caso puede devolver error de ambiguedad. Todas son falsas La 1 y la 2 son verdaderas y las demás falsas. Todas son verdaderas La 2 y la 3 son verdaderas y las demás falsas.
select a, b, c from tabla1, tabla2 where tabla1.a=tabla2.a; 1. El campo a daría un error de ambigüedad. 2. El campo c debe existir en alguna de las tablas. 3. Si tabla1 tiene 5 registros y tabla2 3 registros se mostrarán siempre 15 registros. 4. Si tabla1 tiene 2 registros y tabla2 5 regitrsos se mostrarán siempre 15 registros. Todas son falsas. La 1 y la 2 son verdaderas y las demás falsas. Todas son verdaderas. La 3 y la 4 son verdaderas y las demás falsas.
select a,b,c,d from tabla1, tabla2 where tabla1.a=tabla2.c and b > 5 and c =100 and d < 5; 1. b debe pertenecer a tabla1. 2. d debe pertenecer a tabla2. 3. a daría siempre ambiguedad 4. c daría siempre ambiguedad Todas son verdaderas Todas son falsas La 1 y la 2 son verdaderas y las demás falsas. La 3 y la 4 son verdaderas y las demás falsas.
select * from articulo where articulo.id = (select pedido.id_articulo from pedido where total = 100); 1. Dará error siempre porque la subconsulta no devuelve un escalar 2. No dará nunca error independientemente de los datos de la BD 3. Puede dar error dependiendo de los datos de la BD 4. La subconsulta devuelve como máximo un solo valor Todas son falsas La 3 y la 4 son verdaderas y las demás falsas La 3 es verdadera y las demás falsas La 2 y la 4 son verdaderas y las demás falsas.
select c1, avg(c2), sum(c2) from t1, t2 where t1.c1=t2.c1 and c2 >= 5 group by c1 having c2 >= 5; 1. Error porque c1 en el select debe ser t1.c1 o t2.c1 2. Error porque en el having no se puede comparar con c2 3. Error porque en el where no se puede poner c2 >= 5 4. Error porque no se puede poner dos funciones de agregacion en el select Todas son falsas La 1 y la 2 son verdaderas y las demás falsas La 3 y la 4 son verdaderas y las demás falsas Todas son verdaderas.
select tabla1.a, avg(b) from tabla1 t1, tabla2 where tabla1.a=tabla2.a and b = (select avg(b) from tabla2); 1. Es sujeto a error porque b debe estar en las dos tablas. 2. Es sujeto a error porque a no puede estar en las dos tablas. 3. Es sujeto a error porque b no se puede comparar con una media. 4. Es sujeto a error porque la subconsulta debe estar correlacionada. Todas son falsas. Todas son verdaderas. La 3 y la 4 son verdaderas y las demás falsas. La 1 y la 2 son verdaderas y las demás falsas.
La consulta: select * from articulo where precio >= all (select precio from articulo where categoria = 'C-1'); 1. Da error sino hay ningún artículo de categoria 'C-1' 2. Da error si hay más de un artículo de categoría 'C-1' 3. No da nunca error porque está bien formulada 4. Da siempre error porque no se puede comparar un campo con un valor no escalar de la subconsulta La 4 es verdadera y las demás falsas La 2 es verdadera y las demás falsas La 1 y la 2 son verdaderas y las demás falsas La 3 es verdadera y las demás falsas.
select * from tabla1, tabla2; 1. Si tabla1 tiene 5 registros y tabla2 3 registros devolverá simepre 15 registros. 2. Si tabla1 tiene 3 regsitros y tabla2 5 registros devolverá siempre 15 registros. 3. Si tabla1 tiene 2 campos y tabla2 tiene 3 campos devovlerá 5 campos. 4. Si tabla1 tiene 3 campos y tabla2 tiene 2 campos devolverá 5 campos. Todas son verdaderas. La 1 y la 3 son verdaderas y las demás son falsas. Todas son falsas. La 2 y la 4 son verdaderas y las demás falsas.
La consulta: select * from articulo where precio > (select precio from articulo where categoria = 'C-1'); 1. Da error sino hay ningún artículo de categoria 'C-1' 2. Da error si hay más de un artículo de categoría 'C-1' 3. No da nunca error porque está bien formulada 4. Da siempre error porque no se puede comparar un campo con un valor no escalar de la subconsulta La 4 es verdadera y las demás falsas La 1 y la 2 son verdaderas y las demás falsas La 2 es verdadera y las demás falsas La 3 es verdadera y las demás falsas.
La consulta SQL99: select alumno.nre, nombre, apellidos, avg(nota) as media from alumno left join matricula on matricula.nre=alumno.nre where year(fecha)=2022 group by alumno.nre having media >=5; 1. Da un error ya que se debe agrupar por todos los campos de la select 2. Da error porque la condición en el having está mal fomulada 3. No da ningún tipo de error y obtiene (al menos) los alumnos de nota media >= 5 en el año 2022 4. Devuelve siempre al menos tantos registros como alumnos existan en la tabla alumno, independientemente de los registros de la tabla matricula La 1 y la 2 son verdaderas y las demás falsas La 3 y la 4 son verdaderas y las demás falsas La 2 es verdadera y las demás falsas La 3 es verdadera y las demás falsas.
La consulta SQL99: select alumno.nre, nombre, apellidos, count(*) as aprobadas from matricula inner join alumno on matricula.nre=alumno.nre where year(fecha)=2022 group by alumno.nre having nota >= 5; 1. Da un error ya que se debe agrupar por todos los campos de la select 2. Da error porque la condición en el having no se puede realizar con un campo no agrupado. 3. No da ningún tipo de error y obtiene los alumnos aprobados en el año 2022 4. Devuelve siempre al menos tantos registros como alumnos existan en la tabla alumno, independientemente de los registros de la tabla matricula La 3 y la 4 son verdaderas y las demás falsas La 3 es verdadera y las demás falsas La 1 y la 2 son verdaderas y las demás falsas La 2 es verdadera y las demás falsas.
La consulta: select count(*) from matricula where matricula.nre='000001'; 1. Puede devolver nulo si no existe ningún estudiante matriculado en la tabla matricula con ese nre. 2. Puede devolver un valor > 0 si en la tabla matricula el campo nre no es clave única. 3. Dará error porque una select con una función de agregación debe contener un group by 4. Dará error porque el nre debe aparecer en el select ya que está también en el where La 3 es verdadera y las demás falsas La 4 es verdadera y las demás falsas La 2 es verdadera y las demás falsas La 1 y la 2 son verdaderas y las demás falsas.
select t1.c1, avg(c2) from t1, t2 where t1.c1=t2.c1 and c2 <> 10 group by t1.c1 having sum(c2) >=50 1. Error porque el select no se puede poner t1.c1 2. Error porque en el where no se puede poner c2 <> 10 3. Error porque en el group by no se puede poner t1.c1 4. Error porque en el having no se puede poner sum(c2) > 50 La 2 y la 4 son verdaderas y las demás faslas Todas son falsas La 1 y la 3 son verdaderas y las demás falsas Todas son verdaderas.
select a, b, c from tabla1, tabla2; 1. Devolverá error de ambiguedad si el campo a está presente en las dos tablas. 2. Devolverá error de ambiguedad si el campo b está presente en las dos tablas. 3. Devolverá error en cualquier caso porque no se especifica condición de reunión. 4. Devolverá error en el caso que tabla1 tenga registros pero tabla2 no. La 1 y la 2 son verdaderas y las demás falsas. Todas son falsas La 1 y la 3 son verdaderas y las demás falsas. La 2 y la 4 son verdaderas y las demás falsas.
Denunciar test Consentimiento Condiciones de uso