Giter Site home page Giter Site logo

syllabus-2019-1's Introduction

IIC2413 - Bases de Datos

Tabla de contenidos


Equipo

Profesor

Nombre Sección Email
Adrián Soto 1 [email protected]

Ayudantes de cátedra

Nombre Email
Isidora Vizcaya [email protected]
Romano Fenzo [email protected]
Tamara Cucumides [email protected]
Constanza Gaínza [email protected]
María Ignacia Sánchez [email protected]
Marcelo Saldías [email protected]
Daniela Concha [email protected]
Patricio de Solminihac [email protected]

Ayudantes de proyecto

Nombre Email
Felipe Silva [email protected]
Wenyi He Yang [email protected]
Kevin Johnson [email protected]
Nicolás Quiroz [email protected]
Philippe Potin [email protected]
Fernanda Durán [email protected]
Valentina Álvarez [email protected]
Valentina Rojas [email protected]

Evaluación

Nota de Cátedra

El curso contará con 3 interrogaciones y un examen a lo largo del semestre. El contenido de estas será el material visto en clases, ayudantías y en las actividades del curso. La hora de inicio de las interrogaciones será a las 18:30, mientras que el examen comenzará a las 9:00. Las fechas son las siguientes:

Interrogación Fecha
Interrogación #1 lunes 08 de abril
Interrogación #2 miércoles 08 de mayo
Interrogación #3 miércoles 05 de junio
Examen martes 02 de julio

La nota de cátedra (NC) corresponde a:

NC = I1 + I2 + I3 + 2·EX - min(I1, I2, I3, Ex)

Nota de Proyecto

El curso contará con un proyecto que tiene 5 entregas. Las fechas y el método de entrega será anunciado durante el semestre, para cada entrega.

La nota de proyecto (NP) corresponde a:

NP = 0.05·E1 + 0.20·E2 + 0.3·E3 + 0.20·E4 + 0.25·E5

Importante: La nota de las entregas 3, 4 y 5 estarán sujetas a una evaluación de pares que puede alterar la nota del alumno. Si el profesor lo considera necesario, citará a a los alumnos cuyas evaluaciones de pares indican un comportamiento irregular en las entregas.

Nota Final

Si NC > 4.0 y NP > 4.0 la nota final (NF) del curso se calcula como:

NF = 0.5·NC + 0.5·NP

En otro caso, la nota se calcula como:

NF = min(3.9, 0.5·NC + 0.5·NP)


Foro

La página de Issues se utilizará como foro para preguntas. Notar que las etiquetas ya se encuentran definidas. Este es el único canal oficial para formular preguntas.

Tanto al publicar como comentar, debes atenerte a las normas del curso. Además, debes utilizar Markdown cuando sea necesario. Por ejemplo, cuando se necesita mostrar código o mensajes de error.

Una vez resuelto el problema, da las gracias y cierra el issue.

Importante: El equipo docente puede tardar hasta 24 horas en contestar una issue, aunque normalmente el tiempo de respuesta debería ser menor. Por lo mismo, se recomienda no publicar issues el mismo día de alguna entrega o interrogación.


Política de integridad académica

Los alumnos de la Escuela de Ingeniería de la Pontificia Universidad Católica de Chile deben mantener un comportamiento acorde a la Declaración de Principios de la Universidad. En particular, se espera que mantengan altos estándares de honestidad académica. Cualquier acto deshonesto o fraude académico está prohibido; los alumnos que incurran en este tipo de acciones se exponen a un Procedimiento Sumario. Es responsabilidad de cada alumno conocer y respetar el documento sobre Integridad Académica publicado por la Dirección de Docencia de la Escuela de Ingeniería (disponible en SIDING).

Específicamente, para los cursos del Departamento de Ciencia de la Computación, rige obligatoriamente la siguiente política de integridad académica. Todo trabajo presentado por un alumno para los efectos de la evaluación de un curso debe ser hecho individualmente por el alumno, sin apoyo en material de terceros. Por trabajo se entiende en general las interrogaciones escritas, las tareas de programación u otras, los trabajos de laboratorio, los proyectos, el examen, entre otros.

En particular, si un alumno copia un trabajo, o si a un alumno se le prueba que compró o intentó comprar un trabajo, obtendrá nota final 1.1 en el curso y se solicitará a la Dirección de Docencia de la Escuela de Ingeniería que no le permita retirar el curso de la carga académica semestral.

Por copia se entiende incluir en el trabajo presentado como propio, partes hechas por otra persona. En caso que corresponda a copia a otros alumnos, la sanción anterior se aplicará a todos los involucrados. En todos los casos, se informará a la Dirección de Docencia de la Escuela de Ingeniería para que tome sanciones adicionales si lo estima conveniente.

Obviamente, está permitido usar material disponible públicamente, por ejemplo, libros o contenidos tomados de Internet, siempre y cuando se incluya la referencia correspondiente.

Lo anterior se entiende como complemento al Reglamento del Alumno de la Pontificia Universidad Católica de Chile. Por ello, es posible pedir a la Universidad la aplicación de sanciones adicionales especificadas en dicho reglamento.

syllabus-2019-1's People

Contributors

alanezz avatar cmgainza avatar felipesilvadv avatar isidoravs avatar lily416 avatar naquiroz avatar nivek0o0 avatar tamaracucumides avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

syllabus-2019-1's Issues

Entrega y Evaluación - Bonus SQL

En el cuestionario de Siding relativo a la Actividad Casen, ¿es necesario adjuntar un .pdf con las explicaciones de las consultas o pueden ser incluidas dentro del .ipynb?

Duda consultas

Para realizar consultas en el curso ¿se puede utilizar el simbolo γ para hacer un GROUP BY en algebra relacional? ¿o como no lo pasamos no se puede utilizar?

Python

Hola!
¿Qué versión de Python es la que se necesita para el curso?
Gracias y saludos.

Actividad SQL: código ajeno

Hola, ¿para realizar un análisis estadístico de mayor profundidad es posible utilizar un código de un tercero (no compañero) y citarlo? En particular es para calcular percentiles.

Gracias!

Pregunta 5 y 7 parte sql ayudantía 2.

Hola, alguien me podría explicar porfa la solución de dicha pregunta. La respuesta de ayudantía fue

SELECT uid FROM Partidas P1
where NOT EXISTS
(SELECT * FROM PartidasP2
WHERE P1.uid=P2.uid
AND P2.duracion>30) 

Y la 7 que hay unas cosas raras jajaja

Gracias!

Tour en regiones y agencias

Los Tour pueden estar mas de una vez por agencia pensando que pueden estar en 2 regiones de una agencia? y tambien pueden estar mas de una vez en una region pensando que dos agencias deistintas lo ofrecen en una region?

Datos entregados - Entrega 2

Hola!
Tengo una duda en los datos entregados, se me es imposible relacionar cada hotel con una región y necesito saber esto para responder las consultas!
Gracias!

Ayudantia PHP "Ejecutar" los archivos

Buenas, queriendo practicar cómo se verían las PHP-HTML-cosas en el navegador, meti toda la carpeta AyudantiaPHP en el Sites de mi grupo (usando filezilla), y luego me estanqué porque no sé cómo "ejecutar" los archivos, o abrirlos. ¿Cómo se hace?

Consultas sobre la guía de la Interrogación 1

Hola, me encontraba resolviendo la guía de la interrogación 1 y me surgieron dos dudas con respecto a la pregunta 1. La primera de estas es con respecto a la primera consulta que nos piden realizar la que dice lo siguiente: "El nombre de cada banda junto al nombre de cada integrante." De esta consulta logré obtener 2 interpretaciones, la primera es que piden simplemente hace un par de joins, y la otra es bastante más compleja, ya que se entiende como que nos están solicitando responder los integrantes de cada banda, por cada banda y sin tener información alguna a los nombres de las bandas. ¿Cuál de estas interpretaciones sería la correcta?

La segunda duda es con respecto a la tercera consulta de la misma pregunta, en la que nos piden las bandas enemigas durante el 2012, aquí mi interrogante sería la siguiente: ¿Nos piden una respuesta que muestre los nombres o las id de las bandas que eran enemigas entre ellas o todas las bandas que tenían un enemigo durante ese año(retornando solo una id o un nombre en este caso)?

Muchas gracias de antemano.

Normalización datos

Hola, no entiendo bien a que se refieren con:

datos no vienen necesariamente normalizados

No se si se refieren a BCNF, o que pueden haber datos nulos entremedio, o que hay que cambiar el encoding o el formato de las fechas, o que simplemente los nombres de las columnas deben ser igual a nuestro esquema o todo junto. Gracias!

Vinos por tour

¿Asumimos que en cada tour, cada viña que se visite ofrecerá todos sus vinos o ofrecen sólo algunos?

En resumen, ¿los vinos son atributos de las viñas o de los toures?

Error Actividad1: SQL

Hola, estoy finalizando la actividad de SQL y el código del final tira syntax error pero no he tocado nada de ese código porque venía así. Qué puede ser?

Captura de Pantalla 2019-03-31 a la(s) 1 03 17 p  m

Cliente SSH en Windows

Segun el tutorial de SQLite para Linux basta el terminal pero para Windows se recomienda utilizar putty.

Mi consulta: no se puede ocupar git bash que esta basado en Linux?

Al menos logre ingresar al servidor del proyecto sin problemas pero no se si a futuro tenga algún conflicto, gracias.

Consultas sobre el promedio, máximo entre otras

Hola,

Ayer en clases discutimos cómo sacar las tuplas de que cumplen que son mayores que el promedio. Olvidé mencionar que también esto se puede hacer con consultas anidadas. Por ejemplo si tenemos una tabla R(a int, b int):

SELECT * FROM R WHERE a >= (SELECT AVG(a) FROM r);

La consulta anterior selecciona todo de la tabla R donde el atributo a sea mayor que el promedio de a en la tabla R. Ojo que un error MUY común es hacer esto:

SELECT * FROM R WHERE a >= (AVG(a));

En el que lo que se intenta anidar no es una consulta. Esta técnica para comparar con MAX, MIN, etc.

Recuerden intentar jugar harto con SQL para la prueba del lunes.

Saludos!

Declaración Tablas

Hola! La declaración de las tablas es necesario escribirlas en álgebra relacional? O podemos declararlas en cualquier formato mientras sea claro y se resalten las "primary keys"?

Duda clases E/R

Hola!

image

Aquí estamos asumiendo que una fila de la tabla "arriendo" será solo una transacción y que esta no puede tener más de una película? Me complica ver las flechas como las relaciones 1:N cuando tenemos 4 entidades.

Gracias!

AyudantiaPHP >consultas> referencia a ejercicio_ayudantia

Aunque la verdad no estoy seguro si ese el verdadero problema, cuando hago alguna consulta dados los PHP de la ayudantía, me aparece un error cada vez que intento acceder a la base de datos, lo que me hace querer preguntar (después de buscar en los archivos) ¿donde se hace la referencia a "ejercicio_ayudantia.csv?", o es algo que uno mismo debe hacer? help

Registro de las transferencias de archivos al Server

¿Existirá una forma de acceder o ver el tiempo exacto en el que subimos (por ejemplo) la E1 al Server? Tengo entendido que en MacOS con .bash_history a lo más puedo ver los comandos que usé en la Terminal pero no el tiempo en que los utilicé.

Es más que nada porque intenté subir una v2 de mi E1 demasiado cerca de las 23:59 (la idea de revisar nuevamente la entrega fluye cerca de estas horas) y no sé si me contará para la evaluación, de todas formas dejé la v1 intacta en caso de tener problemas.

😓😅

BCNF

Con respecto a la entrega 2 del proyecto, ¿Qué debe cumplir el BCNF y cómo debemos justificarlo?
De antemano gracias

Ayuda! [Entrega 2]

Hola!
Algún ayudante de proyecto que pueda coordinar juntarse conmigo o mi compañero.
Por motivos de fuerza mayor ninguno de nosotros pudo asistir a la ayudantía de PHP/Entrega 2.
Nos intentamos poner al corriente con los datos de la ayudantía y la wiki que subieron, pero no nos ha servido de mucho, y no podemos avanzar con la entrega.
Estamos bastante perdidos con lo que hay que hacer :(
Me pueden contactar a [email protected]
Saludos!

Pregunta 6 ayudantía 2

Para la pregunta 6 la solución de la ayudantía fue la siguiente:

CREATE VIEW Partidas_Juegos (jid, nombre, partidas) AS
SELECT J.jid, J.nombre, COUNT(P.pid)
FROM Juegos J, Partidas P
WHERE J.jid = P.jid
GROUP BY J.jid, J.nombre

SELECT PJ.nombre
FROM Partidas_Juegos PJ
WHERE ALL
(SELECT *
FROM Partidas_Juegos PJ2
WHERE PJ.partidas >= PJ2.partidas)

Me gustaría saber si funcionaría lo siguiente o sino porque no sirve:

CREATE VIEW Partidas_Juegos (nombre, partidas) AS
SELECT  J.nombre, COUNT( * )
FROM Juegos J, Partidas P
WHERE J.jid = P.jid
GROUP BY J.jid

SELECT PJ.nombre
FROM Partidas_Juegos PJ
WHERE  PJ.partidas > ALL
(SELECT PJ.partidas
FROM Partidas_Juegos PJ2)

Donde los cambios que importantes son el * del COUNT, que en group by no puse J.nombre y que no hice WHERE ALL sino que comparé las partidas con toda la tabla anidada.

Guía I1 Consulta 5

Alguien me puede ayudar con la consulta para saber los equipos con más de un 75% de partidos ganados de local? Muchas gracias!!

Servidor IIC2413 - Pregunta casual

¿Es posible que instalen el package tree en el server para que cada grupo pueda ver de forma rápida todos sus directorios 🧐👀?

Gracias!

Nombre como un primary key

Hola,
Valdrá la pena asumir que los nombres de los senderos son únicos en todas las reservas (como para hacerla primary key)? o le agregamos un atributo sid ?
Nos interesa por que no sabemos en que formato recibiremos alguna base de datos futura para el proyecto.

Saludos!

Materia I1

Hola !
Quería saber si entran llaves foráneas y BCNF
Gracias de antemano !

Datos Entrega 2 Grupo impar

Viendo los datos que fueron entregados y el enunciado correspondiente a la entrega 1, notamos que no existe tipo de habitación en los datos, mientras que esto si es pedido en el modelo.
La pregunta es: asumo que esto es un error del enunciado original, o que debiera existir una columna correspondiente a los tipos de habitación en las tablas, o que la interpretación original de tipo de habitación no corresponde a nada relevante dentro del problema? (razón entonces para preguntarse por qué se colocó en primera instancia).
Gracias.

Senderos entrega 2

Hola, intentando poblar las bases de datos me encontre con un problema, en el largo de los senderos en los archivos que nos dieron, hay algunos que números que vienen con dos puntos, por ejemplo 9.935.754 y otros que vienen 45667.678 y eso me genera un problema al poblar las tablas, es un error o efectivamente tiene que ser asi?

Atributos de tablas

Hola!
En el enunciado se dice que podemos crear tablas adicionales a las pedidas. ¿Podemos también agregar atributos a las tablas pedidas? ¿O sólo deben contener los atributos que se indican?

Gracias!

Formato consultas 4, 5 y 6

Hola, ¿cómo se entregan las consultas 4, 5 y 6? ¿O para responderlas solamente es necesario que las tablas que hagamos sean consistentes para una posible consulta con álgebra relacional?

Gracias de antemano

Grupo Par csv con menos informacion

Hola, solo queria hacer notar que para los parques nacionales en el enunciado de la entrega 1 constaba de un atributo que era el número de teléfono, pero revisando las tablas que nos entregaron no encontre esa columna en ninguna parte, por lo que finalmente quiero saber si se decidio que no se considera el telefono de ahora en adelante o simplemente fue un error.

Saludos

Entrega 2 - Poblar tablas

Hola, para la entrega 2, debemos utilizar las tablas como nos la dieron a nosotros en los csv? o debemos dejar las tablas como las modelamos en nuestro diagrama y modelo?
Si es que el caso es el segundo, se pueden modificar las tablas desde excel o hay que cargar las tablas con codigo e ir seleccionando cuales columnas queremos en cada tabla?

Datos csv Entrega 2

Viendo los excel, se puede notar que los atributos estan separados por coma. En el excel de hoteles_habitaciones las direcciones aparecen entre comilla lo que permite validar todo lo que esta dentro de esta como un atributo (incluyendo las comas) pero resulta que hay casos como en el hotel Saldivar (desde la línea 152) que las direcciones no aparecen con comillas y al separarlos me divide la direccion en mas atributo con lo cual se agrega un columna extra que no debería existir. Mi pregunta es: Es parte del trabajo nuestro arreglarlo o es un error que lo van a arreglar? Gracias!

Modelación E/R

Hola !
cuando en los ejercicios tengo que pasar de la modelación al esquema, ¿tengo que hacer una tabla por cada entidad y relación presente?¿ o solo de las relaciones ?

Gracias de antemano !

GROUP BY

¿Se pueden hacer sub-grupos dentro de un grupo?

Digamos que tengo la siguiente tabla:
FRUTAS(fruta, color, cantidad, dueño)
Y la instancia tiene manzanas rojas y verdes, y peras naranjas y azules (por alguna extraña razón)
Si quisiera agrupar por fruta, entonces tendría 2 grupos manzanas y peras.
Pero si estos grupos los quisiera subdividir por color ....
¿Se puede hacer?
¿Como seria la sintaxis en SQL?

Lo que me interesa en este caso seria saber la cantidad de una fruta según el color

Tutorial Servidor

Conexión con el servidor

Para conectarse al servidor pueden seguir el tutorial disponible en la carpeta Proyecto de este repositorio.

Cambio de clave del Usuario

Una vez que ingresen al servidor, deberían cambiar su contraseña para evitar el ingreso de usuarios malintencionados. Para ello deben utilizar:

passwd

Este comando les pedirá su clave actual y su clave nueva dos veces. Si es su primera vez usando una consola, no se asusten si al escribir no les salen asteriscos para la contraseña, eso es normal.

Ingresar al DBMS Postgres

Una vez dentro del servidor, pueden ejecutar el siguiente comando para ingresar a su base de datos:

psql

Se les pedirá una contraseña, que en principio es la misma que utilizaron para ingresar al servidor por primera vez ('grupoXX'). Se sugiere que también la cambien para evitar accesos no autorizados.

Cambio de clave Postgres

Una vez dentro de la terminal de postgres, pueden ejecutar:

ALTER USER <grupoXX> ENCRYPTED PASSWORD 'newpassword';

Debería mostrarles el siguiente output

ALTER ROLE

Con eso esta listo el cambio de clave.

Sintaxis en Postgres

Existen 2 tipos de comandos:

  • los que son propios del DBMS y sirven para administrar el sistema. Estos comienzan con ' \ ' y no terminan con ' ; '. Por ejemplo: \dt
  • los que son típicos de SQL y que sirven para administrar las tablas. Estos deben terminar con ' ; ' Por ejemplo: SELECT * FROM Tabla;

Importar datos en Postgres

Para ello pueden utilizar el siguiente comando

\COPY nombre_tabla from 'relative/path/to/file.csv' DELIMITER ',' CSV HEADER

Aquí es importante destacar un par de cosas:

  • La ruta relativa comienza desde su carpeta de usuario, es decir, si los datos están en el servidor en '/home/grupoXX/entrega1/CSV/datos.csv', en el comando de postgres deberían escribir '/entrega1/CSV/datos.csv'
  • DELIMITER sirve para indicar el caracter de separación de los datos.
  • HEADER indica la presencia de una fila de encabezado, para ignorarla al importar los datos.
  • Las columnas de datos se insertan de forma ordenada y correlativa en la tabla. Si desean insertar con un orden personalizado, pueden utilizar:
\COPY nombre_tabla(atributo2, atributo1, atributo3) from 'relative/path/to/file.csv' DELIMITER ',' CSV HEADER

Subir archivos del proyecto al servidor (Entregas 1 a 5)

OJO: Deben coordinarse con su compañero de grupo para no subir archivos al mismo tiempo y sobrescribirse mutuamente.

Aquí explicaré dos formas de subir y bajar los archivos desde y hacia el servidor, una es sencilla, usando una interfaz gráfica como FileZilla y otra un poco más compleja, con el comando scp, para quienes prefieren usar la terminal UNIX/PUTTY. Ustedes pueden elegir cual usar, bajo su responsabilidad, son formas distintas de hacer lo mismo.

Vía FileZilla (Fácil)

Captura de pantalla de 2019-03-19 20-22-26

Esta es la interfaz de Filezilla luego de la descarga e instalación. El sector izquierdo corresponde a los directorios y archivos en su computador, mientras que el lado derecho corresponderá al servidor.

En la parte superior hay entradas para servidor, usuario, contraseña y puerto. Deben rellenarlas con los siguientes datos para conectarse:

servidor: bases.ing.puc.cl
user: grupoXX
password: mypassword
port: 22

También existe la posibilidad de guardar esta conexión para luego ingresar con 1 click y no tener que escribir las credenciales cada vez. Se sugiere investigar.

Captura de pantalla de 2019-03-19 20-23-05

La transferencia de archivos es bidireccional y para ello pueden arrastrar los archivos o hacerles doble click. También es posible mover, renombrar o eliminar archivos y carpetas en el servidor.

Captura de pantalla de 2019-03-19 20-24-20

Una vez que terminen y quieran desconectarse, solo tienen que apretar el botón que se resalta en la última imagen (en la parte superior).

Vía Terminal con el comando SCP (Díficil)

Los usuarios de Windows pueden ocupar el comando pscp en lugar de scp, el que se instala automáticamente junto con Putty.

En los demás sistemas operativos los archivos y carpetas se pueden copiar desde y hacia el servidor utilizando la siguiente sintaxis:

scp   ruta_y_archivo_a_transferir    ruta_destino

o bien

scp  -r  ruta_y_carpeta_a_transferir    ruta_destino

Para especificar rutas en el servidor debemos anteceder [email protected]:. Las rutas del servidor comienzan con /home/grupoXX/..... Podemos abreviar estas dos carpetas con ~.
Así, podríamos utilizar este comando de las siguientes formas:

Archivo hacia el servidor:

scp  /IIC2413/Proyecto/Entrega1/Informe.pdf  [email protected]:/home/grupoXX/Sites/Entrega1/

Archivo desde el servidor:

scp  [email protected]:~/Sites/Entrega1/index.php  .

Carpeta hacia el servidor:

scp  -r  /IIC2413/Proyecto/Entrega1  [email protected]:~/Sites/

Carpeta desde el servidor:

scp  -r  [email protected]:~/Sites/Entrega1/  .
  • La opción -r le indica al comando que transfiera recursivamente lo que existe dentro de la carpeta
  • El . significa que el destino es el directorio actual.
  • ~ es un abreviación de /home/GrupoXX
  • el comando ls sirve para listar el directorio actual

Organización del servidor y URL

  • Sus próximas entregas consisten en presentar consultas en un sitio web, y luego ir añadiendo funcionalidades. Se ingresará a las consultas desde la dirección http://bases.ing.puc.cl/~grupoXX/. Esta ruta mostrará todo lo que tengan dentro de la carpeta Sites.
  • Se recomienda que cada una de las entregas se suban de forma separada dentro de la carpeta Sites, es decir, que creen una carpeta llamada entregaX para subir los archivos correspondientes a ella. Esto para hacer posible las recorrecciones. De esta forma, si suben un archivo.php en /grupoXX/Sites/entregaX/, podrán visualizarlo en la siguiente dirección: http://bases.ing.puc.cl/~grupoXX/entregaX/archivo.php

[BCNF] - Foreign Keys

¿Es permitido por BCNF utilizar Foreign Keys? Lo quiero hacer específicamente en una relacion 1:N

Falta de información para una base de datos "coherente"

Hola, quería saber que pasa con las tablas que relacionan al usuario con los platos y los tours, ya que solo entregaron la tabla reserva que relaciona los usuarios con las habitaciones. Mi pregunta es si en el modelo E/R ¿Relaciono a usuarios con platos (por ejemplo con "pide") y usuarios con tours (por ejemplo con "contrata") o simplemente pongo a usuarios solo relacionadose con habitaciones (con "reserva") ?. La misma pregunta es para crear la base de datos en SQL, ¿Creo las tablas que relacionan a usuarios con platos y tours, dejándolas vacías, o simplemente no las creo?.
Gracias de antemano!

I1-2018-2 Pregunta 1 Álgebra relacional

Hola, tengo una duda con respecto al uso de álgebra relacional para poder obtener el resultado de la primera consulta solicitada donde piden explícitamente las aerolínias que tengan vuelos directos a TODAS las ciudades de estados unidos.

El problema viene principalmente en la parte de TODAS, pues no se me ocurre si existe un modo de verificar eso solamente sabiendo el dato del país al que corresponden con álgebra relacional

Muchas gracias de antemano

SELECT {A_1..A_n} - {A_n} Parámetros

Si tengo una tabla con columnas desde la {A,B,..,Z} y quiero mostrar las columnas {A,B..,Y}

Hay alguna forma de hacer esto con el SELECT (que no sea SELECT A,B,C..,Y)?
Por ej SELEC * -Z? Espero se entienda la pregunta

PD: No quiero borrar la columna Z

Modelo E/R - Subentidad sin atributos adicionales

Hola, quisiera saber si es incorrecto crear una subentidad sin atributos adicionales a lo de la entidad "Madre".
Esto en el contexto de algún caso como el de la guía I1 P3, donde Pago en Efectivo no tiene ningún atributo adicional al de Pago, pero otras subclases como Paypal sí los tiene. Hacer la subclase sería para no hacer el atributo "tipo" en pago, siendo que para otros tipos hay subclases.
Gracias!

Convencion nombres de id, y Duda agencia

Primero queria saber cual es la correcta manera de nombrar el id, siguiendo convencion usada en actividad 1 el id de Usuario seria uid, pero que pasa cuando existen don tablas que empiezan con la misma letra, seria correcto nombrar segundo id uid2.

Y tambien para Agencias se señala que Pueden estar en mas de una region, es correcto que tenga una columna Region que acepte listas, o lo correcto es crear otra tabla que me entrege esa informacion

Gracias

Duda Guia I1

En la pregunta de álgebra relacional, cuarta consulta, se nos pide crear un operador "enemigos" que recibe una relación binaria y un año.
Ahora mi duda es si la relación que recibe es binaria, según entiendo tiene 2 columnas, que yo asumo serán los ids de las bandas que colaboran. Entonces ¿como relaciono el año con la tabla?.
¿Esta tiene de igual forma una columna del atributo fecha?
¿Estoy confundiendo conceptos?

Saludos!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.