favor explicar qué se entiende por tuplas en SQL Gracias ..¿Qué significa el término "Tuple" en las bases de datos relacionales?
Respuesta
La mayoría de las respuestas están en el camino correcto. Sin embargo, una fila no es una tupla. Tuples*
son desordenado conjuntos de valores conocidos con nombres. Por lo tanto, las siguientes tuplas son la misma cosa (estoy usando una sintaxis tupla imaginaria desde una tupla relacional es en gran parte una construcción teórica):
(x=1, y=2, z=3)
(z=3, y=2, x=1)
(y=2, z=3, x=1)
... asumiendo por supuesto que x, y, y z son todos los enteros También tenga en cuenta que no existe una tupla "duplicada". Por lo tanto, no solo los anteriores son iguales, son los lo mismo. Por último, las tuplas solo pueden contener valores conocidos (por lo tanto, no hay nulos).
A fila**
es un conjunto ordenado de valores conocidos o desconocidos con nombres (aunque pueden omitirse). Por lo tanto, las siguientes comparaciones devuelven falso en SQL:
(1, 2, 3) = (3, 2, 1)
(3, 1, 2) = (2, 1, 3)
Tenga en cuenta que hay formas de "simular". Por ejemplo, considere esto INSERT
declaración:
INSERT INTO point VALUES (1, 2, 3)
Suponiendo que x es primero, y es segundo, y z es tercero, esta consulta puede ser reescrita como esto:
INSERT INTO point (x, y, z) VALUES (1, 2, 3)
O esto:
INSERT INTO point (y, z, x) VALUES (2, 3, 1)
... pero lo único que estamos haciendo realmente es cambiar el orden en lugar de eliminarlo.
Y también tenga en cuenta que puede haber valores desconocidos también. Por lo tanto, es posible que tenga filas con valores desconocidos:
(1, 2, NULL) = (1, 2, NULL)
... pero tenga en cuenta que esta comparación siempre se producirá UNKNOWN
. Después de todo, ¿cómo se puede saber si dos valores desconocidos son iguales?
Y, por último, las filas pueden estar duplicadas. En otras palabras, (1, 2)
y (1, 2)
pueden compararse para ser iguales, pero eso no significa necesariamente que sean la misma cosa.
Si este es un tema que le interesa, recomiendo leer SQL and Relational Theory: How to Write Accurate SQL Code antes de CJ Date.
*
Tenga en cuenta que estoy hablando de tuplas, ya que existen en el modelo relacional, que es un poco diferente de las matemáticas en general.
**
Y en caso de que se lo esté preguntando, casi todo en SQL es una fila o una tabla. Por lo tanto, (1, 2)
es una fila, mientras que VALUES (1, 2)
es una tabla (con una fila).
ACTUALIZACIÓN: Me he expandido un poco en esta respuesta en una publicación de blog here.
fila de una tabla de base de datos
¿Es una fila en una tabla de base de datos o cualquier fila en cualquier conjunto? Si crea una proyección desde múltiples tablas, vistas, etc., ¿cada fila es una tupla también? – flipdoubt
Una tupla puede ser un subconjunto de la fila –
AFAIK, una fila en un conjunto de resultados: pueden ser todos los campos de una tabla, desde varias tablas, vistas, etc. –
Una tupla se utiliza para definir una porción de datos de un cubo?; se compone de una colección ordenada de un miembro de una o más dimensiones. Una tupla se usa para identificar secciones específicas de datos multidimensionales de un cubo; una tupla compuesta por un miembro de cada dimensión en un cubo describe por completo el valor de una celda.
En el modelo relacional, las tuplas no están ordenadas: http://en.wikipedia.org/wiki/Tuple#Relational_model –
-1: Preguntó por SQL, no por cubos. –
Es una abreviada "N-tuple
" (como en quadruple
, quintuple
etc.)
Es una fila de un conjunto de filas tomada como un todo.
Si emite:
SELECT col1, col2
FROM mytable
, toda resultado será un ROWSET
, y cada par de col1, col2
habrá un tuple
.
Algunas bases de datos pueden funcionar con una tupla en conjunto.
desea, usted puede hacer esto:
SELECT col1, col2
FROM mytable
WHERE (col1, col2) =
(
SELECT col3, col4
FROM othertable
)
, que comprueba que en su conjunto tuple
de un rowset
partidos toda una tuple
de otro rowset
.
En bases de datos relacionales, las tablas son relations (in mathematical meaning). Las relaciones son conjuntos de tuplas. Por lo tanto, la fila de la tabla en la base de datos relacional es tupla en relación.
Wiki sobre las relaciones:
En matemáticas (más específicamente, en conjunto teoría y lógica), una relación es una propiedad que asigna valores de verdad a combinaciones (k-tuplas) de k individuos . Normalmente, la propiedad describe una posible conexión entre los componentes de una k-tupla. Para un conjunto dado de k-tuplas, se asigna un valor de verdad a cada k-tuple según si la propiedad tiene o no es válida.
Relaciones * no son * tablas: http://en.wikipedia.org/wiki/Table_(database) –
Jason, vartec dijo lo contrario: fila de la tabla en la base de datos relacional es tupla en relación con " –
También dijo" las tablas son relaciones (en el significado matemático). "Tal vez debería haber dicho" Las tablas * no son * relaciones ". :-) –
Las tuplas son valores conocidos que se utilizan para relacionar la tabla en DB relacional.
tupla = 1 registro; n-tuple = lista ordenada de 'n' registros; Elmasri Navathe book (página 198 3ª edición).
registro = ordenado o desordenado.
Según tengo entendido, una tabla tiene un conjunto de claves K y una función de tipaje T con dominio K. Una fila, o "tupla", de la tabla es una función r con dominio K tal que r (k) un elemento de T (k) para cada tecla k. Entonces, la terminología es engañosa en el sentido de que una "tupla" se parece más a una matriz asociativa.
Cualquiera que sea su uso en matemáticas, una tupla en RDBMS se considera comúnmente como una fila en una tabla o conjunto de resultados. En un RDBMS, una tupla no está ordenada. Una tupla en un MDDBMS es la instancia de datos en una celda con sus instancias de dimensión asociadas (miembros).
¿Cuál es la tupla en un almacén de datos familiares de columna?
Tuple se utiliza para hacer referencia a una fila en un modelo de base de datos relacional. Pero la tupla tiene una pequeña diferencia con la fila.
- 1. ¿Están las bases de datos orientadas a documentos destinadas a reemplazar las bases de datos relacionales?
- 2. Bases de datos relacionales y Matemáticas?
- 3. ¿Cómo funcionan las bases de datos relacionales bajo la capucha?
- 4. ¿Qué significa el término "BODMAS"?
- 5. Triple Stores vs bases de datos relacionales
- 6. ¿Recomendaciones con datos jerárquicos en bases de datos no relacionales?
- 7. ¿Qué significa el término base de datos heredada?
- 8. ¿Qué significa el término "léxico" en C++?
- 9. ¿Qué significa el término "restringido" en java?
- 10. Explorador/visualización de datos de bases de datos relacionales?
- 11. Buenos recursos para el diseño de bases de datos relacionales
- 12. Implementación eficiente de búsqueda facetada en bases de datos relacionales
- 13. ¿De qué manera las personas implementan cambios de bases de datos relacionales usando Node.js?
- 14. ¿Qué significa el término "Verilog Synthesis"?
- 15. Heredoc: ¿qué significa realmente el término 'EOT'?
- 16. Pros/contras de bases de datos basadas en documentos vs. bases de datos relacionales
- 17. ¿Cómo hacer modelado de herencia en bases de datos relacionales?
- 18. ¿Existen bases de datos relacionales distribuidas fáciles de usar?
- 19. Patrones de diseño de bases de datos relacionales?
- 20. Bases de datos relacionales vs. dimensionales, ¿cuál es la diferencia?
- 21. Alternativas a las bases de datos relacionales tradicionales para las corrientes de actividades
- 22. Índice de referencia x CouchDB bases de datos relacionales
- 23. Qué innovaciones de bases de datos relacionales ha habido en los últimos 10 años
- 24. ¿Qué significa el término "bloqueo" en la programación?
- 25. ¿Cómo ayudo a una persona que quiere datos de bases de datos relacionales en formato CSV?
- 26. ¿Qué tan similares son los lenguajes de bases de datos relacionales y la programación lógica?
- 27. ¿Qué aspecto de las bases de datos relacionales les dificulta escalar lo suficiente en servicios como Google App Engine?
- 28. ¿Qué significa exactamente el término antiguo objeto Java plano (POJO)?
- 29. En mysql, las bases de datos show; el comando no enumera todas mis bases de datos
- 30. Qué son buenas soluciones de bases de datos NoSQL y no relacionales para la base de datos de auditoría/registro
Hola, he leído su respuesta y he leído respuestas similares en SO (Mike Samuel en [esta pregunta] (http://stackoverflow.com/questions/4212265/tuples-vs-records/679449) y sampson-chen en [esa pregunta] (http://stackoverflow.com/questions/13057663/what-is -the-difference-between-a-row-record-and-tuple)) así como también [aquí] (http://www.techopedia.com/definition/1251/tuple-database) y [wiki] (http: //en.wikipedia.org/wiki/Tuple), y todos dicen que las tuplas son ** conjuntos ** ordenados, no desordenados. Por lo tanto, su respuesta me confunde. – Lou
Soy jus Estoy pasando por esto ahora, pero si una fila tiene una clave principal que es única, ¿eso no hace que cada fila sea única de esa manera? No importa cómo se ordena? –
Pregunta básica: '(x = 1, y = 2, z = 3)' ¿1 tupla o 3 tuplas? –