Cardinality has different meanings depending on the context of what's being discussed. In data engineering, we mainly use cardinality when talking about a data model's relationships and when talking about the statistics of a particular column in a database table. ## Cardinality (Data Modeling) The number of rows in one table that relate to rows in another table. Common types include one-to-one, one-to-many, and many-to-many. It's used to define and analyze relationships in data models.[^1] ## Cardinality (SQL Statements) The number of distinct values in a column/expression. Low cardinality means many repeated values, while high cardinality means most values are unique.[^2] Database engines can use this information to optimize SQL queries. [^1]: https://en.wikipedia.org/wiki/Cardinality_%28data_modeling%29 [^2]: https://en.wikipedia.org/wiki/Cardinality_%28SQL_statements%29 %% wiki footer: Please don't edit anything below this line %% ## This note in GitHub <span class="git-footer">[Edit In GitHub](https://github.dev/data-engineering-community/data-engineering-wiki/blob/main/Concepts/Data%20Modeling/Cardinality.md "git-hub-edit-note") | [Copy this note](https://raw.githubusercontent.com/data-engineering-community/data-engineering-wiki/main/Concepts/Data%20Modeling/Cardinality.md "git-hub-copy-note")</span> <span class="git-footer">Was this page helpful? [👍](https://tally.so/r/mOaxjk?rating=Yes&url=https://dataengineering.wiki/Concepts/Data%20Modeling/Cardinality) or [👎](https://tally.so/r/mOaxjk?rating=No&url=https://dataengineering.wiki/Concepts/Data%20Modeling/Cardinality)</span>