A table is a collection of related data held in a
table format within a
database
In computing, a database is an organized collection of data stored and accessed electronically. Small databases can be stored on a file system, while large databases are hosted on computer clusters or cloud storage. The design of databases ...
. It consists of
columns and
rows.
In
relational databases, and
flat file databases, a ''table'' is a set of data elements (values) using a model of vertical
columns (identifiable by name) and horizontal
rows, the
cell being the unit where a row and column intersect. A table has a specified number of columns, but can have any number of rows. Each row is identified by one or more values appearing in a particular column subset. A specific choice of columns which uniquely identify rows is called the
primary key.
"Table" is another term for
"relation"; although there is the difference in that a table is usually a
multiset (bag) of rows where a relation is a
set
Set, The Set, SET or SETS may refer to:
Science, technology, and mathematics Mathematics
*Set (mathematics), a collection of elements
*Category of sets, the category whose objects and morphisms are sets and total functions, respectively
Electro ...
and does not allow duplicates. Besides the actual data rows, tables generally have associated with them some
metadata, such as
constraints on the table or on the values within particular columns.
The data in a table does not have to be physically stored in the database.
Views also function as relational tables, but their data are calculated at query time. External tables (in
Informix
IBM Informix is a product family within IBM's Information Management division that is centered on several relational database management system (RDBMS) offerings. The Informix products were originally developed by Informix Corporation, whose ...
or
Oracle,
[
]
for example) can also be thought of as views.
In many systems for computational statistics, such as
R and
Python's
pandas, a data frame or data table is a
data type
In computer science and computer programming, a data type (or simply type) is a set of possible values and a set of allowed operations on it. A data type tells the compiler or interpreter how the programmer intends to use the data. Most progra ...
supporting the table abstraction. Conceptually, it is a list of records or
observations all containing the same fields or columns. The implementation consists of a list of
arrays or vectors, each with a name.
Tables versus relations
In terms of the
relational model of databases, a table can be considered a convenient representation of a
relation, but the two are not strictly equivalent. For instance, a
SQL table can potentially contain duplicate rows, whereas a true relation cannot contain duplicate rows that we call
tuple
In mathematics, a tuple is a finite ordered list (sequence) of elements. An -tuple is a sequence (or ordered list) of elements, where is a non-negative integer. There is only one 0-tuple, referred to as ''the empty tuple''. An -tuple is defi ...
s. Similarly, representation as a table implies a particular ordering to the rows and columns, whereas a relation is explicitly unordered. However, the database system does not guarantee any ordering of the rows unless an
ORDER BY
clause is specified in the
SELECT
statement that queries the table.
An equally valid representation of a relation is as an ''n''-dimensional
chart, where ''n'' is the number of attributes (a table's columns). For example, a relation with two attributes and three values can be represented as a table with two columns and three rows, or as a two-dimensional graph with three points. The table and graph representations are only equivalent if the ordering of rows is not significant, and the table has no duplicate rows.
Comparisons
Hierarchical databases
In non-relational systems,
hierarchical databases, the distant counterpart of a table is a structured
file, representing the rows of a table in each row of the file and each column in a row. This structure implies that a row can have repeating information, generally in the child data segments. Data are stored in sequence of physical records.
Spreadsheets
Unlike a
spreadsheet
A spreadsheet is a computer application for computation, organization, analysis and storage of data in tabular form. Spreadsheets were developed as computerized analogs of paper accounting worksheets. The program operates on data entered in ...
, the
datatype of a column is ordinarily defined by the
schema
The word schema comes from the Greek word ('), which means ''shape'', or more generally, ''plan''. The plural is ('). In English, both ''schemas'' and ''schemata'' are used as plural forms.
Schema may refer to:
Science and technology
* SCHEMA ...
describing the table. Some
SQL systems, such as
SQLite
SQLite (, ) is a database engine written in the C programming language. It is not a standalone app; rather, it is a library that software developers embed in their apps. As such, it belongs to the family of embedded databases. It is the mo ...
, are less strict about column datatype definitions.
See also
*
Relation (database)
*
Row (database)
*
Column (database)
*
Virtual column
*
Table (information)
References
{{DEFAULTSORT:Table (Database)
zh-yue:關係數據庫
SQL
Data modeling
Relational database management systems