为什么我们在SQL中使用UNION来联接行?

3df52oht  于 2022-09-18  发布在  Java
关注(0)|答案(1)|浏览(143)

当SELECT语句中的列顺序和名称必须相同时,为什么要在SQL中使用UNION呢?难道我们不能只更新或更改表以添加更多行吗?

plicqrtu

plicqrtu1#

您不会一直向单个表添加行的原因是它们不属于该表。

出于同样的原因,如果您在两个整数变量(如x + y)之间进行算术运算,则不会将y的值永久地添加到x。您希望将x的值保留为它自己的东西,即使有时您也需要求和。

SQL and Relational Theory: How to Write Accurate SQL Code这样的一本书清楚地表明了关系亲戚之间的区别。Relvar就像一张table。它是一组特定行的持久存储。

关系是像SELECT或VALUES这样的SQL表达式的结果。这种关系可能不会存储在任何Relvar中;它是短暂的。它可能是使用表达式、联接等的更复杂查询的结果。

以此类推,像42这样的a数字是一个整数值。但是存储整数值42的int x整型变量。它们都可以用作+的操作数,但它们不是一种东西。

如果两个关系的列在编号和数据类型上兼容,则可以联合这两个关系。这些关系不一定只是关系变量,它们可能是其他子查询的结果。

就像在算术中一样,您可以添加x和整个其他整数表达式。

相关问题